zoukankan      html  css  js  c++  java
  • Python 格式化输出

    2017-07-29  22:03:07

    一、使用格式符%进行格式控制

    %[(name)][flags][width].[precision]typecode

    • (name):命名
    • flags可以有+,-,' '或0。+表示右对齐。-表示左对齐。' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。0表示使用0填充
    • wideth : 表示显示宽度,占位个数
    • precision : 表示小数点后精度
    • typecode : 格式符为真实值预留位置,并控制显示的格式。格式符可以包含有一个类型码,用以控制显示的类型 

        %s    字符串 (采用str()的显示)

        %r    字符串 (采用repr()的显示)

        %c    单个字符

        %b    二进制整数

        %d    十进制整数

        %i    十进制整数

        %o    八进制整数

        %x    十六进制整数

        %e    指数 (基底写为e)

        %E    指数 (基底写为E)

        %f    浮点数

        %F    浮点数,与上相同

        %g    指数(e)或浮点数 (根据显示长度)

        %G    指数(E)或浮点数 (根据显示长度)

    import math
    print('hello world%s %d %10.3f date:%s' %('!!!',2017,math.pi,'7/29'))
    
    #hello world!!! 2017      3.142 date:7/29
    import math
    print('hello world%s %d %-10.3f date:%s' %('!!!',2017,math.pi,'7/29'))
    
    #默认为右对齐,添加-使之成为左对齐,发现空格集中在了右侧
    #hello world!!! 2017 3.142      date:7/29

    二、使用槽进行格式化输出

    str.format()

    print('{:^5}	{:^10}'.format('大学','北京大学'))
    print('{:^5}	{:^10}'.format('大学','北京航天航空大学'))
    
    
    # 大学         北京大学   
    # 大学       北京航天航空大学 

    中文字符的居中对齐并不十分齐整的原因是当中文字符宽度不够时,采用西文字符填充;中西文字符占用宽度不同。

    采用中文字符的空格填充 chr(12288)

    print('{0:^5}	{1:{2}^10}'.format('大学','北京大学',chr(12288)))
    print('{0:^5}	{1:{2}^10}'.format('大学','北京航天航空大学',chr(12288)))
    
    # 大学         北京大学   
    # 大学       北京航天航空大学 

     这样就可以很好的解决中文字符的对齐问题。

  • 相关阅读:
    黄聪:让wordpress模板完全整合google AdSense搜索广告
    黄聪:如何用SQL Server内置的存储过程模板对数据库进行备份和恢复
    git使用安装实战
    Redis持久化之大数据服务暂停问题
    redis的那些事
    centos上安装git
    拿什么守护你PHP程序级守护进程的实现与优化
    redis学习资料链接地址汇总
    redis搭建实战记录
    zeromq_传说中最快的消息队列
  • 原文地址:https://www.cnblogs.com/hyserendipity/p/7257832.html
Copyright © 2011-2022 走看看