• python的str.format方法


    format方法被用于字符串的格式化输出。

     print('{0}+{1}={2}'.format(1,2,1+2))   #in
    1+2=3   #out

    可见字符串中大括号内的数字分别对应着format的几个参数。

    若省略数字:

    print('{}+{}={}'.format(1,2,1+2))   #in

    可以得到同样的输出结果。但是替换顺序默认按照[0],[1],[2]...进行。

    若替换{0}和{1}:

    print('{1}+{0}={2}'.format(1,2,1+2))   #in
    2+1=3   #out

    输出字符串:

    print('{0} am {1}'.format('i','alex'))  
    i am alex   #out

    输出参数的值:

    1 length = 4
    2 name = 'alex'
    3 print('the length of {0} is {1}'.format(name,length))
    the length of alex is 4

    精度控制:

    print('{0:.3}'.format(1/3))
    0.333

    宽度控制:

    print('{0:7}{1:7}'.format('use','python'))
    use    python 

    精宽度控制(宽度内居左):

    print('{0:<7.3}..'.format(1/3))   
    0.333  ..

    其实精宽度控制很类似于C中的printf函数。

    同理'>'为居右,'^'为居中。符号很形象。

     

    补全:

     1 #!/usr/bin/python
     2 #python3.6
     3 print('{0:0>3}'.format(1)) #居右,左边用0补全
     4 print('{0:{1}>3}'.format(1,0))  #也可以这么写
     5 #当输出中文使用空格补全的时候,系统会自动调用英文空格,这可能会造成不对齐
     6 #for example
     7 blog = {'1':'中国石油大学','2':'浙江大学','3':'南京航空航天大学'}
     8 print('不对齐:')
     9 print('{0:^4}\t\t{1:^8}'.format('序号','名称'))
    10 for no,name in blog.items(): #字典的items()方法返回一个键值对,分别赋值给no和name
    11     print('{0:^4}\t\t{1:^8}'.format(no,name))
    12 print('\n对齐:')
    13 print('{0:^4}\t\t{1:{2}^8}'.format('序号','名称',chr(12288))) #chr(12288)为UTF-8中的中文空格
    14 for no,name in blog.items():
    15     print('{0:^4}\t\t{1:{2}^8}'.format(no,name,chr(12288)))
    #out
    001
    001
    不对齐:
     序号              名称   
     1               中国石油大学 
     2                浙江大学  
     3              南京航空航天大学
    
    对齐:
     序号              名称   
     1               中国石油大学 
     2                浙江大学  
     3              南京航空航天大学

     

  • 相关阅读:
    MSSQL_打开xp_cmdshell
    想在win7 32bit的情况下装个64位虚拟机的想法
    查看系统已运行了多久
    sql弄个表结构出来..
    在win下的cmd 的find
    告别google.com.hk的龟速
    VC常用数据类型使用转换详解
    C++中的文件输入/输出ios:xx eat Processing(zz)
    X86汇编语言学习手记(1)
    程序员数据结构笔记
  • 原文地址:https://www.cnblogs.com/Alexzzzz/p/6832253.html
Copyright © 2020-2023  润新知