如何在 python 中打印 C 格式
How to print a C format in python
一个python新手问题:
我想在 python 中打印带有参数列表的 c 格式:
agrs = [1,2,3,"hello"]
string = "This is a test %d, %d, %d, %s"
如何使用 python 进行打印:
这是测试1、2、3,你好
谢谢。
看看 %
运算符。它接受这样的字符串和元组:
print "My age is %d and my favourite char is %c" % (16, '$')
字符串重载模数运算符 %
,用于 printf
-style formatting,特殊情况 tuple
s 用于使用多个值进行格式化,因此您需要做的就是从 [= 转换14=] 到 tuple
:
print(string % tuple(agrs))
元组:
示例:
print("Total score for %s is %s " % (name, score))
你的情况:
print(string % tuple(agrs))
或使用新式字符串格式:
print("Total score for {} is {}".format(name, score))
或者将值作为参数传递,然后打印即可:
print("Total score for", name, "is", score)
Source
使用新式格式:这个怎么样? (这里只是做实验)
文档:https://docs.python.org/3.6/library/string.html
args = [1,2,3,"hello"]
string = "{}, "*(len(args)-1)+"{}" # = "{}, {}, {}, {}"
'This is a test {}'.format(string.format(*args)) # inception!
或者这个:
args = [1,2,3,"hello"]
argstring = [str(i) for i in args]
'This is a test {}'.format(', '.join(argstring))
或者简单地说:
args = [1,2,3,"hello"]
'This is a test {}'.format(', '.join(map(str,args)))
全部打印:
This is a test 1, 2, 3, hello
l = [1,2,3,"hello"]
print("This is a test %d, %d, %d, %s"%(l[0],l[1],l[2],l[3]))
希望这有效!
干杯!
以下方法不需要 % 字符:
agrs = [1,2,3,"hello"]
print("This is a test: {:02d},{:>10d},{:05d},{:>15s}".format(agrs[0],agrs[1],agrs[2],agrs[3]))
同样会做:
agrs = [1,2,3,"hello"]
print("This is a test: {0:02d},{1:>10d},{2:05d},{3:>15s}".format(agrs[0],agrs[1],agrs[2],agrs[3]))
每个项目都由每个大括号内的“:”后面的内容格式化,并且每个项目都对应于括号中传递给格式的参数。比如传入agrs[0],格式为“02d”,相当于C中的%02d.
一个python新手问题:
我想在 python 中打印带有参数列表的 c 格式:
agrs = [1,2,3,"hello"]
string = "This is a test %d, %d, %d, %s"
如何使用 python 进行打印:
这是测试1、2、3,你好
谢谢。
看看 %
运算符。它接受这样的字符串和元组:
print "My age is %d and my favourite char is %c" % (16, '$')
字符串重载模数运算符 %
,用于 printf
-style formatting,特殊情况 tuple
s 用于使用多个值进行格式化,因此您需要做的就是从 [= 转换14=] 到 tuple
:
print(string % tuple(agrs))
元组:
示例:
print("Total score for %s is %s " % (name, score))
你的情况:
print(string % tuple(agrs))
或使用新式字符串格式:
print("Total score for {} is {}".format(name, score))
或者将值作为参数传递,然后打印即可:
print("Total score for", name, "is", score)
Source
使用新式格式:这个怎么样? (这里只是做实验) 文档:https://docs.python.org/3.6/library/string.html
args = [1,2,3,"hello"]
string = "{}, "*(len(args)-1)+"{}" # = "{}, {}, {}, {}"
'This is a test {}'.format(string.format(*args)) # inception!
或者这个:
args = [1,2,3,"hello"]
argstring = [str(i) for i in args]
'This is a test {}'.format(', '.join(argstring))
或者简单地说:
args = [1,2,3,"hello"]
'This is a test {}'.format(', '.join(map(str,args)))
全部打印:
This is a test 1, 2, 3, hello
l = [1,2,3,"hello"]
print("This is a test %d, %d, %d, %s"%(l[0],l[1],l[2],l[3]))
希望这有效! 干杯!
以下方法不需要 % 字符:
agrs = [1,2,3,"hello"]
print("This is a test: {:02d},{:>10d},{:05d},{:>15s}".format(agrs[0],agrs[1],agrs[2],agrs[3]))
同样会做:
agrs = [1,2,3,"hello"]
print("This is a test: {0:02d},{1:>10d},{2:05d},{3:>15s}".format(agrs[0],agrs[1],agrs[2],agrs[3]))
每个项目都由每个大括号内的“:”后面的内容格式化,并且每个项目都对应于括号中传递给格式的参数。比如传入agrs[0],格式为“02d”,相当于C中的%02d.