我有一个数字元组让我们说nums =(1,2,3)。数量的长度不是恒定的。是否有使用字符串在Python格式化做这样的事情变量元组长度的Python字符串格式
>>>print '%3d' % nums
将产生
>>> 1 2 3
希望这不是一个重复的问题,但我不能找到它,如果它是的一种方式。 感谢
我有一个数字元组让我们说nums =(1,2,3)。数量的长度不是恒定的。是否有使用字符串在Python格式化做这样的事情变量元组长度的Python字符串格式
>>>print '%3d' % nums
将产生
>>> 1 2 3
希望这不是一个重复的问题,但我不能找到它,如果它是的一种方式。 感谢
试试这个:
print ('%3d'*len(nums)) % tuple(nums)
你可以使用。加入():
nums = (1, 2, 3)
"\t".join(str(x) for x in nums) # Joins each num together with a tab.
这是不够用?
print ' '.join(str(x) for x in nums)
params = '%d'
for i in range(1,15):
try:
newnum = (params)%nums
except:
params = params + ',%d'
next
print newnum
你甚至试图运行这个?提示:如果'nums'的大小大于1,它会崩溃。 – Maehler
在Gentoo Linux,Python 2.7.2 ...上,它对我有用吗? – RightmireM
现在看,我明白你的想法。但是,最后一行必须有缩进错误。代码在这里写入的方式,如果len(nums)> 1',它会崩溃,如果len(nums)== 1,它将打印14次。 – Maehler
使用 '' .format
nums = (1, 2, 3)
print(''.join('{:3d} '.format(x) for x in nums))
生产
>>> 1 2 3
@agf:感谢用来捕获 - C orrected。 – viraptor