python知识点5之字符串格式化 (%和format)

1.字符串格式化%(需要分别不同类型)

使用一个字符串作为模板,模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式。格式符有:整数(%d)、字符串(%s)、浮点数(%f)。

1.1、匿名tuple(推荐在参数少时用)
python用一个tuple将多个值传递给模板,每个值对应一个格式符。

print "I'm %s.I'm %d year old"  %  ('Vamei',99)
        #引号内的为模板    连接模板和tuple的"%"为格式化操作符
#或者将整个字符串表达式赋值给a,再输出a.
a="I'm %s.I'm %d year old"  %  ('Vamei',99)
print a

1.2、命名dict,字典的key可以重用

在每个转换说明符中的%字符后面,可以加上(用园括号括起来的),后面在跟上其他说明元素。

print "I'm %(name)s.I'm %(age)d year old.almost %(age)d" % {'name':'Vamei','age':99}

#输出为 I'm Vamei.I'm 99 year old.almost 99

phonebook = {'Alice':123, 'hello':456, 'sky':789}
print "Alice's phone number is %(Alice)s" % phonebook

#输出为 "Alice's phone number is 123"

2.字符串格式化(format)(不需要指定字符串还是数字类型)

自python2.6开始,新增了一种格式化字符串的函数str.format(),通过{ }和 . 来代替传统%

2.1位置参数

print 'my name is {},age is {}'.format('hoho',18)
print 'my name is {1},age is {0}'.format(18,'hoho')
li=['hoho',18]
print 'my name is {1},age is {0}'.format(*li)

2.2使用关键字参数

hash={'name':'hoho','age':18}
print 'my name is {name},age is {age}'.format(**hash)
print 'my name is {name},age is {age}'.format(name='hoho',age=18)

2.3精度和进制
{0:b} 二进制
{0:o} 八进制
{0:x} 十六进制
{0:.2f} 保留三位小数点

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值