百木园-与人分享,
就是让自己快乐。

Python学习日记(六)

格式化方法:

  • format()方法

格式化函数,可以将字符串以特定格式输出,参数用{}括起来

  • 位置参数
  • 关键字参数
  • 综合位置参数和关键字参数时需要注意位置参数应该在关键字参数之前
  • 参数后面的冒号表示格式化符号的开始
  • >>> \"{0} love {1}.{2}\".format(\"I\", \"FishC\", \"com\")
    \'I love FishC.com\'
    >>> \"{a} love {b}.{c}\".format(a = \"I\", b = \"FishC\", c = \"com\")
    \'I love FishC.com\'
    >>> 

 

 

习题:

  • 要求编写一个密码安全性检查的脚本check.py
  • 需求:
       低级密码要求:
    #   1. 密码由单纯的数字或字母组成
    #   2. 密码长度小于等于8位
    
       中级密码要求:
    #   1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\\)任意两种组合
    #   2. 密码长度不能低于8位
    
       高级密码要求:
    #   1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\\)三种组合
    #   2. 密码只能由字母开头
    #   3. 密码长度不能低于16位
    
    代码一:
    symbols = \"~!@#$%^&*()_=-/,.?<>;:[]{}\\|\"
    chars = \'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\'
    nums = \'0123456789\'
    t = \'y\'
    while t == \'y\':
        passwd = input(\'您输入的密码为空(或空格),请重新输入:\')
        length = len(passwd)    
    #判断长度
        while(passwd.isspace() or length == 0):
            passwd = input(\'您输入的密码为空(或空格),请重新输入:\')
            length = len(passwd)
        if length <= 8:
            flag_len = 1
        elif 8 < length <16:
            flag_len = 2
        else:
            flag_len = 3
        flag_con = 0
    #判断是否包含特殊字符
        for each in passwd:
            if each in symbols:
                flag_con +=1
                break
    #判断是否包含字母
        for each in passwd:
            if each in chars:
                flag_con += 1
                break
    #判断是否包含数字
        for each in passwd:
            if each in nums:
                flag_con += 1
                break
    #打印结果
        while 1:
            print(\"您的密码安全级别评定为:\",end=\'\')
            if flag_len == 1 or flag_con == 1:
                print(\"低\")
            elif flag_len == 2 or flag_con == 2:
                print(\"中\")
            else:
                print(\"高\")
                print(\"请继续保持\")
                break
            print(\"\"\"请按以下方式提升您的密码安全级别:
        1.密码必须由数字、字母及特殊字符三种组合
        2.密码只能由字母开头
        3.密码长度不能低于16位\"\"\")
            break
        t = input(\"还要再测试么?(”y“继续,其他退出)\")
    
    
    代码二:
    str1 = \"~!@#$%^&*()_=-/,.?<>;:[]{}\\|\"
    has_str1 = 0
    has_num = 0
    has_alpha = 0
    t = \'y\'
    while t == \'y\':
            password = input(\"请输入需要检查的密码组合:\")
            length = len(password)
            while(password.isspace() or length == 0):  # 有空格或者长度为零
                    password = input(\'您输入的密码为空(或空格),请重新输入:\')
            for i in password:
                    if i in str1:
                            has_str1 = 1
                    if i.isdigit():  # 所有字符都是数字
                            has_num = 1
                    if i.isalpha():  # 所有字符都是字母
                            has_alpha = 1
            has =  has_str1 + has_num + has_alpha
            if length <= 8 or password.isalnum():
                    level = \"低\"
            if length > 8 and has ==2:
                    level = \"中\"
            if length >= 16 and has == 3 and password[0].isalnum():
                    level = \"高\"
            print(\"您的密码安全等级评定为:%s\"%level)
            if level == \"高\":
                    print(\"请继续保持\")
            else:
                    print(\"\"\"请按以下方式提升您的密码安全级别:
            1.密码必须由数字、字母及特殊字符三种组合
            2.密码只能由字母开头
            3.密码长度不能低于16位\"\"\")
            t = input(\"还要再测试么?(”y“继续,其他退出)\")

     

  • 总结:字符串内置方法总结
  • Python学习日记(六)Python学习日记(六)Python学习日记(六)Python学习日记(六)

 

  • 字符串格式化符号

  • Python学习日记(六)

 

  • 格式化操作符辅助指令
  • Python学习日记(六)
  • >>> \'%5.1f\' % 27.678
    \' 27.7\'
    >>> \'%.2e\' % 27.6789
    \'2.77e+01\'
    >>> \'%10d\' % 5
    \'         5\'
    >>> \'%-10d\' % 5
    \'5         \'
    >>> \'%010d\' % 5
    \'0000000005\'
    >>> \'% # x\' % 100
    \'0x64\'

     

  • 字符串转义字符含义
  • Python学习日记(六)

来源:https://www.cnblogs.com/feiyuyu/p/15968410.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » Python学习日记(六)

相关推荐

  • 暂无文章