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}\t{:^10}‘.format(‘大学‘,‘北京大学‘))
print(‘{:^5}\t{:^10}‘.format(‘大学‘,‘北京航天航空大学‘))

# 大学         北京大学
# 大学       北京航天航空大学 

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

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

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

# 大学         北京大学   
# 大学       北京航天航空大学 

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

时间: 2024-10-11 14:36:57

Python 格式化输出的相关文章

Python格式化输出

python 格式化输出细节,以备忘 转载自: http://www.cnblogs.com/plwang1990/p/3757549.html 1. 打印字符串 print ("His name is %s" % ("David")) 2.打印整数 print ("He is %d years old" % (25)) 3.打印浮点数 print ("His height is %f m" % (1.83)) 4.打印浮点数

python格式化输出及大量案例

python格式化输出符号及大量案例 1.格式化输出符号 python格式化输出符号 格式化符号 含义 %c 转化成字符 %r 优先使用repr()函数进行字符串转化 %s 转换成字符串,优先使用str() %d或%i 转化成有符号十进制 %u 转化成无符号十进制 %o 转化成无符号八进制数 %x或%X 转化成无符号十六进制数,x或X代表转化后以小写或者大写形式输出 %e或%E 转化成科学计数法,e或E代表以小写或者大写形式输出 %f或%F 转化成浮点数 %g或%G %e和%f 或 %E和%F的

Python格式化输出字符串 (%, format(), f'')

格式说明符/占位符:% 目的:格式与内容分离,制作复杂的公共字符串模板,让某些位置变成动态可输入的. 用法:' %[datatype]  '  % (data, data, ...) %前设置输出格式,用引号括起来:%后设置输出内容,格式部分有几个%,内容部分就有几个数据,多个数据时用小括号括起来,并用逗号分隔. 需要输出%时,可以用%%转义,就取消了占位符的作用 print('3%%%s' % 'gg') 结果: 3%gg 整型 %o 八进制 ,%d  (或%i)十进制,%x 十六进制 pri

[转]Python格式化输出

今天写程序又记不清格式化输出细节了……= =索性整理一下. python print格式化输出. 1. 打印字符串 print ("His name is %s"%("Aviad")) 效果: 2.打印整数 print ("He is %d years old"%(25)) 效果: 3.打印浮点数 print ("His height is %f m"%(1.83)) 效果: 4.打印浮点数(指定保留小数点位数) print

python 格式化输出之%号

<2>什么是格式化 看如下代码: age = 10 print("我今年%d岁"%age) age += 1 print("我今年%d岁"%age) age += 1 print("我今年%d岁"%age) ... 在程序中,看到了%这样的操作符,这就是Python中格式化输出. age = 18 name = "xiaohua" print("我的姓名是%s,年龄是%d"%(name,age)

Python格式化输出——format用法示例

format OR % 提到Python中的格式化输出方法,一般来说有以下两种方式: print('hello %s' % 'world') # hello world print('hello {}'.format('world')) # hello world 到底哪种好呢,反正对我来说,用了.format()之后就再也不想用%了. format()不用理会数据类型,%s,%f等等我记不完: format()功能更丰富,填充方式,对齐方式都很灵活,让你的打印效果更美观: format()是官

python格式化输出和运算符

字典里套列表 >>> dic={'egon':['123',3],'alex':['alex3714',3]} >>> dic {'egon': ['123', 3], 'alex': ['alex3714', 3]} >>> dic['alex'] ['alex3714', 3] >>> dic['alex'][0] 'alex3714' 列表里套字典 >>> user_info=[{'egon':'123'},{

python——格式化输出、占位符、format()

占位符 常用占位符 描述 %s 字符串 %d 十进制整数 %o 八进制 %x 十六进制 %f 浮点数 >>> print('%s' % 'hello world') # 字符串输出 hello world >>> print('%20s' % 'hello world') # 右对齐,取20位,不够则补位 hello world >>> print('%-20s' % 'hello world') # 左对齐,取20位,不够则补位 hello worl

python 格式化输出用户名/密码

格式化输出用户名/密码 内容来自网络 def get_account(num): accounts = [] for index in range(1, num+1): accounts.append( {"username": "user%s" % index, "password": str(index) * 6}, ) return accounts print get_account(5) 输出: [{'username': 'user1