Mik*_*e L 115 python string python-3.x
在Python 2中我用过:
print "a=%d,b=%d" % (f(x,n),g(x,n))
Run Code Online (Sandbox Code Playgroud)
我试过了:
print("a=%d,b=%d") % (f(x,n),g(x,n))
Run Code Online (Sandbox Code Playgroud)
Rob*_*obᵩ 196
在Python2中,print
是一个引入语句的关键字:
print "Hi"
Run Code Online (Sandbox Code Playgroud)
在Python3中,print
是一个可以调用的函数:
print ("Hi")
Run Code Online (Sandbox Code Playgroud)
在这两个版本中,%
都是一个操作符,它需要左侧的字符串和值的值或元组或dict
右侧的映射对象(如).
所以,你的线应该是这样的:
print("a=%d,b=%d" % (f(x,n),g(x,n)))
Run Code Online (Sandbox Code Playgroud)
此外,对Python3和更新版本的建议是使用{}
样式格式而不是%
样式格式:
print('a={:d}, b={:d}'.format(f(x,n),g(x,n)))
Run Code Online (Sandbox Code Playgroud)
Python 3.6引入了另一种字符串格式化范例:f-strings.
print(f'a={f(x,n):d}, b={g(x,n):d}')
Run Code Online (Sandbox Code Playgroud)
the*_*eye 51
最推荐的方法是使用format
方法.在这里阅读更多相关信息
a, b = 1, 2
print("a={0},b={1}".format(a, b))
Run Code Online (Sandbox Code Playgroud)
sta*_*010 24
来自O'Reilly的Python Cookbook的简单printf()函数.
import sys
def printf(format, *args):
sys.stdout.write(format % args)
Run Code Online (Sandbox Code Playgroud)
示例输出:
i = 7
pi = 3.14159265359
printf("hi there, i=%d, pi=%.2f\n", i, pi)
# hi there, i=7, pi=3.14
Run Code Online (Sandbox Code Playgroud)
kva*_*966 21
Python 3.6引入了用于内联插值的f字符串.甚至更好的是它扩展了语法以允许带插值的格式说明符.当我用Google搜索时,我一直在努力的事情(并且遇到了这个老问题!):
print(f'{account:40s} ({ratio:3.2f}) -> AUD {splitAmount}')
Run Code Online (Sandbox Code Playgroud)
PEP 498有详细信息.并且...它在其他语言中使用格式说明符对我的宠物进行排序 - 允许说明符本身可以是表达式!好极了!请参阅:格式说明符.
小智 9
一个更简单的.
def printf(format, *values):
print(format % values )
Run Code Online (Sandbox Code Playgroud)
然后:
printf("Hello, this is my name %s and my age %d", "Martin", 20)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
336199 次 |
最近记录: |