python print格式化字符串_Python格式化字符串(格式化输出)

目录

Python格式化字符串(格式化输出)

表 1 Python 转换说明符转换说明符解释

%d、%i转换为带符号的十进制整数

%o转换为带符号的八进制整数

%x、%X转换为带符号的十六进制整数

%e转化为科学计数法表示的浮点数(e 小写)

%E转化为科学计数法表示的浮点数(E 大写)

%f、%F转化为十进制浮点数

%g智能选择使用 %f 或 %e 格式

%G智能选择使用 %F 或 %E 格式

%c格式化字符及其 ASCII 码

%r使用 repr() 函数将表达式转换为字符串

%s使用 str() 函数将表达式转换为字符串

举例:

name = "你好,我叫小明"

age = 8

address= "育才东路18号"

print("%s现在已经%d岁了,我家在%s。" % (name, age, address))

你好,我叫小明现在已经8岁了,我家在育才东路18号。

指定最小输出宽度

n = 1234567

print("n(10):%10d." % n)

print("n(5):%5d." % n)

url = "https://blog.csdn.net/"

print("url(35):%35s." % url)

print("url(20):%20s." % url)

n(10): 1234567.

n(5):1234567.

url(35): https://blog.csdn.net/.

url(20):https://blog.csdn.net/.

print()函数高级用法

username = 'Charlie'

userage = 8

#同时输出多个变量和字符串

print("读者名:",username,"年龄:",userage)

#同时输出多个变量和字符串,指定分隔符

print("读者名:",username,"年龄:",userage,sep='|')

读者名: Charlie 年龄: 8

读者名:|Charlie|年龄:|8

print()取消换行

在默认情况下,print() 函数输出之后总会换行,这是因为 print() 函数的 end 参数的默认值是“\n”

#设置end 参数,指定输出之后不再换行

print(40,'\t',end="")

print(5O,'\t',end="")

print(60,'\t',end="")

40 50 60

print()写入文件

open() 函数用于打开 demo.txt 文件,接连 2 个 print 函数会将这 2 段字符串依次写入此文件,最后调用 close() 函数关闭文件

f = open("demo.txt","w")#打开文件以便写入该文件一般在文件目录上

print('沧海月明珠有泪',file=f)

print('蓝回日暖玉生烟',file=f)

f.close()

指定对齐方式

print() 输出的数据总是右对齐的。也就是说,当数据不够宽时,数据总是靠右边输出,而在左边补充空格以达到指定的宽度。Python 允许在最小宽度之前增加一个标志来改变对齐方式,Python 支持的标志如下:

Python 支持的标志标志说明

-指定左对齐

+表示输出的数字总要带着符号;正数带+,负数带-。

0表示宽度不足时补充 0,而不是补充空格。

几点说明:

对于整数,指定左对齐时,在右边补 0 是没有效果的,因为这样会改变整数的值。

对于小数,以上三个标志可以同时存在。

对于字符串,只能使用-标志,因为符号对于字符串没有意义,而补 0 会改变字符串的值

n = 123456

# %09d 表示最小宽度为9,左边补0

print("n(09):%09d" % n)

# %+9d 表示最小宽度为9,带上符号

print("n(+9):%+9d" % n)

f = 140.5

# %-+010f 表示最小宽度为10,左对齐,带上符号

print("f(-+0):%-+010f" % f)

s = "Hello"

# %-10s 表示最小宽度为10,左对齐

print("s(-10):%-10s." % s)

n(09):000123456

n(+9): +123456

f(-+0):+140.500000

s(-10):Hello

指定小数精度

精度值需要放在最小宽度之后,中间用点号.隔开;也可以不写最小宽度,只写精度。具体格式如下:

%m.nf

%.nf

m 表示最小宽度,n 表示输出精度,.是必须存在的。

f = 3.141592653

# 最小宽度为8,小数点后保留3位

print("%8.3f" % f)

# 最小宽度为8,小数点后保留3位,左边补0

print("%08.3f" % f)

# 最小宽度为8,小数点后保留3位,左边补0,带符号

print("%+08.3f" % f)

3.142

0003.142

+003.142

原文链接:https://blog.csdn.net/qq_44785318/article/details/112571066

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值