Ric*_*son 7 python string floating-point integer string-formatting
在Python中进行字符串格式化时,我注意到%s转换也是数字到字符串.
>>> a = 1
>>> b = 1.1
>>> c = 'hello'
>>> print 'Integer: %s; Float: %s; String: %s' % (a, b, c)
Integer: 1; Float: 1.1; String: hello
Run Code Online (Sandbox Code Playgroud)
我不知道其他变量类型,但这样使用是否安全%s?
它肯定比每次总是指定类型更快.
mgi*_*son 14
使用%s自动调用str变量.由于一切都已__str__定义,您应该能够毫无问题地执行此操作(即不会引发异常).但是,你真正打印的是另一个故事......
请注意,在较新的python代码中,还有另一个使用该format方法的选项:
'Integer: {}; Float: {}; String: {}'.format(a,b,c)
Run Code Online (Sandbox Code Playgroud)
这基本上以相同的方式工作,除了它在学习语法后更强大.
是的,这正是%s 意味着什么; 将参数转换为字符串并插入它.
您还可以指定其他形式的转换,如%d和%f对值转换为不同类型的表示.有关详细信息,请参阅字符串格式化操作
作为替代方案,从Python 2.6及更高版本开始,您还可以使用以下.format()方法使用不同形式的字符串格式:
print 'Integer: {0}; Float: {1}; String: {2}'.format(a, b, c)
Run Code Online (Sandbox Code Playgroud)
该方法提供了一些额外的功能,例如引用对象的属性,映射中的键或列表中的索引来引用值.
| 归档时间: |
|
| 查看次数: |
15593 次 |
| 最近记录: |