[英]How to repeat an input without while loop?
我正在弄清楚如何在我的列表中输入 append ,问题是一些输入是字符串,而另一些是浮点数,所以问题是是否可以将输入迭代 2 次作为字符串和 3 次作为浮点数而无需花费一段时间/循环或 for 循环范围,例如:
fighters = [[],[]]
for i in range(len(fighters)):
for j in range(5):
if j <= 1:
fighters[i].append(input())
else:
fighters[i].append(float(input()))
我不知道,做这样的事情(这只是一个参考):
for i in range(len(fighters)):
fighters[i].append(input(), 2) # that 2 means 2 times for example
fighters[i].append(float(input(), 3) # and that 3 means 3 times
这是输入的示例:
Gabriel # i want this 2 as strings
Wolf
7.5 # and this 3 as floats
5.1
5.1
Vlad # same here
Vampire
5.3
7.8
5.0
for i in range(len(fighters)):
for cls in (str,)*2 + (float,)*3:
fighters[i].append(cls(input()))
(str,)
是一个元素的元组,需要额外的逗号。 (str,) * 2
映射到(str, str)
所以(str,)*2 + (float,)*3
映射到(str, str, float, float, float)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.