我要生成以下格式的元组。
Tuple = (2,20,200,2000)
基本上在数字后加0。如何在python 3中生成这些格式的元组。
答案 0 :(得分:3)
您可以执行以下操作:
seed = 2
tuple(seed * 10**n for n in range(4))
给出种子,它将创建seed * 1
,seed * 10
,seed * 100
等的列表,然后将其转换为元组
答案 1 :(得分:0)
类似的事情会起作用:
tuple = ()
n = 5 # amount of items
num = 2 # number you want to have in the tuple
for x in range(n):
new_item = num*10**x
tuple += (new_item,)
print(tuple)
答案 2 :(得分:0)
您可以使用尾部递归(尽管python中的尾部递归并没有带来太多好处):
tuple = (2, )
n = 4
def generate(n, tuple):
if n == 1:
return tuple
else:
tuple = tuple + (tuple[-1]*10, )
return generate(n-1, tuple)
print(generate(n, tuple))
输出:
>> (2, 20, 200, 2000)