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
>>>