Python 从列表打印
我有3个不同的列表,里面的所有数据都来自一个外部CSV文件,它可以工作,尽管我如何打印每个名字和旁边的数字Python 从列表打印,python,list,Python,List,我有3个不同的列表,里面的所有数据都来自一个外部CSV文件,它可以工作,尽管我如何打印每个名字和旁边的数字 name = [] number1 = [] number2 = [] 例如,预期的输出是,尽管我不确定如何做到这一点 LOOP (12) as there is 12 names and numbers in each lsit Test, 5, 20 您可能正在寻找类似以下内容: name = ["Test1", "Test2", "Test3"] number1 = [1,2
name = []
number1 = []
number2 = []
例如,预期的输出是,尽管我不确定如何做到这一点
LOOP (12) as there is 12 names and numbers in each lsit
Test, 5, 20
您可能正在寻找类似以下内容:
name = ["Test1", "Test2", "Test3"]
number1 = [1,2,3]
number2 = [4,5,6]
k=0
for v in name:
print(v + ", " + str(number1[k]) + ", " + str(number2[k]))
k+=1
编辑
正如MSeifert在下面的评论中提到的,这里是enumerate的更好解决方案:
name = ["Test1", "Test2", "Test3"]
number1 = [1,2,3]
number2 = [4,5,6]
for k,v in enumerate(name):
print(v + ", " + str(number1[k]) + ", " + str(number2[k]))
这里有一种使用zip的方法:
for triplet in zip(name, number1, number2):
print(", ".join(map(str, triplet)))
三元组是一个三元组
(a,b,c)
,其中包含3个列表中相应的元素(换句话说,它们是压缩的)只是为了正确性:如果您的对象以[]
开头,那么它们可能是列表而不是数组。您在哪里遇到了这个问题?请阅读zip
和for
循环。“用数字打印每个姓名“-枚举”
?不确定如何使用列表中的每个数字打印每个名称,例如,第一个名称是test,第一个数字1是5,然后第一个数字2是20,我希望列表中的每一个都在一行中,因为有enumerate
和zip
,所以不需要麻烦中间计数器变量k
。