欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python格式化之%占位符格式化

程序员文章站 2024-03-15 15:45:53
...

%占位符

字符串格式化:在要引用变量的位置使用一个占位符来代替,最后在字符串的后面再按顺序指定这些变量的名称

# 格式
print "String %format1 %format2 ....." %(variable1,variable2,.......)
#
>>> name = "teacher"
>>> week = "Sunday"
>>> print("hello %s, today is %s" % (name,week))
hello teacher, today is Sunday
>>> 

在 % 后面要用特定的字符来表示不同类型的变量

%s 表示字符型变量,%d 代表数值型变量,%f代表浮点型变量

>>> name = "teacher"
>>> age = 40
>>> print("hello %s, you age is %d" % (name,age))
hello teacher, you age is 40
>>> 
# %2.4s表示字符串长度为2-4位
# .2f表示保留两位
>>> name = 'tomsssaaa'
>>> age = 20
>>> height = 180.5
>>> print('大家好,我叫%2.4s,年龄:%d,身高:%.2f' % (name, age, height))
大家好,我叫toms,年龄:20,身高:180.50
>>> 

对于浮点数,还可以使用 “%.nf” (n可以使用具体的数字来代替)的形式,来表示小数的位数

>>> num = 7.9
>>> print("The num is %f" % num)
The num is 7.900000
>>> print("The num is %d" % num)
The num is 7
>>> print("The num is %.1f" % num)  # 建议使用的方法
The num is 7.9
##########
>>> num = 7.9
>>> num2 = 9.13
>>> print("num = %d\nnum2 = %.3f" %(num, num2))   # 小数点后保留三位
num = 7
num2 = 9.130
>>> 

# 转义字符
print("good\nnice\nhandsome")   如果字符串有很多换行,用\n写在一行不好阅读,可以换成下面这种写法:
print('''
good
nice
handsome
''')

# 如果字符串中有很多字符需要转义,就需要加入很多\,为了简化,Python允许用r表示内部的字符串默认不转义
print(r"\\\t\\")
print(r"c:\dirname\filename")

%d占位符的其他用法

输出格式为"2020-05-20"的日期,其中年月日都是用变量表示

>>> year = 2020
>>> month = 5
>>> day = 20
>>> print("%d-%d-%d" %(year,month,day))
2020-5-20
>>> 

如果输出的日期是1月4日,月份和日期都用两位数表示,不足两位就在前面补0

>>> year = 2020
>>> month = 1
>>> day = 4
>>> print("%d-%d-%d" %(year,month,day))
2020-1-4
>>> print("%d-%02d-%02d" %(year,month,day))   # 月份和日期都用两位数表示,不足两位就在前面补0
2020-01-04
>>> 
相关标签: Python