zoukankan      html  css  js  c++  java
  • 第15讲:字符串格式化

    一 字符串的格式化

    格式化字符串:就是按照统一的规格去输出字符串

    1  format格式化函数

    • 语法:通过 {} 和 : 来代替以前的 
    • 位置参数
      • 默认位置:不指定格式化位置,按照默认顺序格式化
        • >>> "{} love {}.{}".format("I","FishC","com")
          'I love FishC.com'

      • 设置位置:设置数字顺序指定格式化的位置
        • >>> "{0} love {1}.{2}".format("I","FishC","com")
          'I love FishC.com'
          >>> "{2} love {0}.{1}".format("I","FishC","com")
          'com love I.FishC'

      • 设置关键字:设置关键字指定格式化的内容
        • >>> "{a} love {b}.{c}".format(a="I",b="FishC",c="com")
          'I love FishC.com'
          >>> "{c} love {b}.{a}".format(a="I",b="FishC",c="com")
          'com love FishC.I'

      • 位置参数和关键字参数综合:位置参数必须在关键字参数之前,否则会报错,提示在相应位置没有设置关键字
        • >>> "{0} love {b}.{c}".format("I",b="FishC",c="com")
          'I love FishC.com'
          >>> "{a} love {b}.{0}".format("I",b="FishC","com")
          File "<stdin>", line 1
          SyntaxError: positional argument follows keyword argument

    • 精度控制
      • :号后面设置精度(以.开始加上精度),然后用f结束,若不是设置,默认为精度为6,自动四舍五入,可带符号显示数字正负标志。
      • >>> "{0:.1f}{1}".format(27.658,"GB")
        '27.7GB'

    2 格式化字符%

    • 字符串格式化符号含义
    • 格式化操作符辅助命令
    • Python 的转义字符及其含义
    • 一些例子
      • >>> '%d %s %c' % (89,99,108)
        '89 99 l'
        
        >>> '%d + %d = %d' % (2,5,2+5)
        '2 + 5 = 7'
        
        >>> '%o' % 109
        '155'
        
        >>> '%x' % 198
        'c6'
        >>> '%X' % 198
        'C6'
        
        >>> '%f' % 27.908
        '27.908000'
        
        >>> '%e' % 27.908
        '2.790800e+01'
        
        >>> '%g' % 27.908
        '27.908'
        
        >>> '%4.2f' % 27.908
        '27.91'
        
        >>> '%10d' % 19
        '        19'
        
        >>> '%-10d' % 19
        '19        '
        
        >>> '%10+d' % 19
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        ValueError: unsupported format character '+' (0x2b) at index 3
        
        >>> '%+d' % 19
        '+19'
        >>> '%+d' % -19
        '-19'

    二 课后习题

    0. 编写一个进制转换程序ex15.py:

    """功能:进制转换
    """
    
    q = True
    
    while q:
        num = input("请输入一个整数(输入Q结束程序):")
    
        if num != 'Q':
            num = int(num)
            
            print("十进制:{}->二进制:{:b}".format(num,num))
            print("十进制:%d->二进制:" % num,bin(num))   
    
            print("十进制:{}->十六进制:0x{:x}".format(num,num))
            print("十进制:%d->十六进制:0x%x" % (num,num))
    
            print("十进制:{}->八进制:0o{:o}".format(num,num))
            print("十进制:%d->八进制:0o%o" % (num,num))
        else:
            q = False

    执行结果:

    PS E:3_work4_python2_code_python3_LittleTurtleStudio> python ex15.py
    请输入一个整数(输入Q结束程序):145
    十进制:145->二进制:10010001
    十进制:145->二进制: 0b10010001
    十进制:145->十六进制:0x91
    十进制:145->十六进制:0x91
    十进制:145->八进制:0o221
    十进制:145->八进制:0o221
    请输入一个整数(输入Q结束程序):Q
  • 相关阅读:
    xmlHttp.js.rar 没啥说的。。各浏览器都支持的纯ajax!
    实用正则表达式(实用篇) [转]
    Jquery的好书[pdf,新书]
    xml 中的冒号 读取问题的解决
    给一个DataTable 添加一列,来保存计算出来的结果。。
    悟透JavaScript(转) 超级精华
    当前标识符读写权限
    ie浏览器开机自动启动且全屏
    SQL Server ErrorLog 错误日志(如果数据库所占空间变大)
    利用Git hub创建博客
  • 原文地址:https://www.cnblogs.com/luoxun/p/13261819.html
Copyright © 2011-2022 走看看