当前位置: 代码网 > it编程>前端脚本>Python > Python字符串格式化之使用format()方法

Python字符串格式化之使用format()方法

2024年08月21日 Python 我要评论
python字符串类型的格式化关于字符串的格式化,python支持类似于c语言的printf()函数的格式化方法,也支持format()方法的格式化方法,因为python更接近自然语言的复杂数据类型,

python字符串类型的格式化

关于字符串的格式化,python支持类似于c语言的printf()函数的格式化方法,也支持format()方法的格式化方法,因为python更接近自然语言的复杂数据类型,无法全部通过类c的格式化方法,所以学python着重使用format()方法进行字符串的格式化。

一、format()函数的基本使用

1、 print(“{}{}”.format(a,b),这里{}成为槽,要把后边format里的内容对应放在里边,假如a,b = 1,2 ,输出的结果为12;

*2、*如果{}内有标号,则后边format()里的东西按标号来对应输出,如print(“{1}{0}”.format(a,b),按照以上初始条件,输出结果为21,注意:标号要从0开始排序; 

二、format()函数的格式控制

1、 分别使用< > ^表示左对齐、右对齐、中间对齐

s = "hello"
print("{0:<30}".format(s))
print("{0:^30}".format(s))
print("{0:>30}".format(s))

注意:默认按照左对齐

2、 空白位置的填充类型

填充是指标定宽度内空白位置用什么类型填充,* ^ 用*填充,-^用-填充

s = "welcome"
print("{0:*^30}".format(s))
print("{0:-^30}".format(s))
print("{0:=^30}".format(s))

3、 格式控制中的逗号用于显示数字类型的千位分隔符

q = 45687296215.2
print("{0:-^20,}".format(q))
print("{0:-^20}".format(q))     #对比输出

4、 精度

精度表示两个含义,由小数点(.)开头,对于浮点数,精度表示小数点后输出的有效位数,对于字符串,精度表示字符串输出的最大长度。

print("{0:.3f}".format(3.1415926))
print("{0:.3}".format("hello"))

注意:浮点数输出时记得写f

5、类型

类型包括输出整数类型和浮点数类型的控制规则

(一)整数类型

  • 1> b:输出整数的二进制形式
  • 2> c:输出整数对应的unicode码形式
  • 3> d:输出整数的十进制形式
  • 4> o:输出整数的八进制形式
  • 5> x:输出整数的小写十六进制形式
  • 6> x:输出整数的大写十六进制形式
print("{0:b},{0:c},{0:d},{0:o},{0:x},{0:x}".format(255))

注意要写上0

(二)浮点数类型

  • 1> e:输出浮点数对应小写字母e的指数形式
  • 2> e:输出浮点数对应大写字母e的指数形式
  • 3> f:输出浮点数的标准浮点形式
  • 4> %:输出浮点数的百分形式
print("{0:e},{0:e},{0:f},{0:%}".format(3.1415926))
print("{0:.2e},{0:.2e},{0:.2f},{0:.2%}".format(3.1415926))

注意,浮点数输出尽量使用精度表示小数点后的宽度,有助于更好的控制格式。

三、 归纳总结

四、 小程序—绘制*三角

(1) 代码部分

print("请问你要建立几层?")
n = eval(input())
for i in range(1,n*2 + 1,2):
    s = i*'*'
    print("{0:^{1}}".format(s,n*2))

(2) 运行结果

(3) 代码分析

  • 注意我设置的步长是2,所以截止条件是2*n + 1,否则只会出现n/2层
  • 这里s = i* ‘*’,恰当的增加了小星星

好了,今天的详解就到这里。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com