Python:格式化输出

格式化输出

方式一:(%s)

我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串‘,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。

在Python中,%运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。

如果只有一个%?,括号可以省略。Python中的 %s 方法传递的时候,也可以是看作是shell中的函数参数。

name = input('请输入名字:')
age = input('请输入年龄:')
job = input('请输入职业:')
hobbie = input('请输入爱好:')
msg = '''------------ info of %s -----------
Name  : %s
Age   : %d
job   : %s
Hobbie: %s
------------- end -----------------
''' % (name, name, int(age), job, hobbie)
print(msg)

 

有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%

print('我叫%s,今年%d,学习进度2%%' % ('李起光', 10000))

 

如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串:

name = input('请输入名字:')
age = input('请输入年龄:')
job = input('请输入职业:')
hobbie = input('请输入爱好:')
msg = '''------------ info of %s -----------
Name  : %s
Age   : %s
job   : %s
Hobbie: %s
------------- end -----------------
''' % (name, name, int(age), job, hobbie)
print(msg)

 

方式二:(format函数)

format函数也是通过替换的方式实现格式化输出,它有三种用法如下:

用法一

与上面讲到的 %s类似,不同的之处是将%s换成了’{ }‘大括号,调用时依然需要按照顺序对应。

s = "我叫{},今年{},爱好{}"
s1= s.format('抠脚大汉', '25', '') 

 

用法二:

 通过{n}方式来指定接收参数的位置,将调用时传入的参数按照位置进行传入。相比%s可以减少参数的个数,实现了参数的复用。

s= "我叫{0},今年{1},爱好{2},我依然叫{0}"
s1= s.format('抠脚大汉', '25', '') 

 

用法三:

通过{str}方式来指定名字,调用时使用str='xxx',确定参数传入。

s = "我叫{name},今年{age},爱好{hobby}"
s1= s.format(age=25,hobby='girl',name='抠脚大汉')

 

转载于:https://www.cnblogs.com/bailo/p/9031295.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值