我是一个Python初学者,所以我很抱歉这是一个非常基本的问题.
我有两个数据列表,它们来自:
with filein as f:
reader=csv.reader(f)
xs, ys = zip(*reader)
Run Code Online (Sandbox Code Playgroud)
我想创建一个循环,它将取"xs"中的第一项和"ys"中的第一项并打印出来.然后我想循环回来并重复两个列表中的第二个项目等等.
我原以为:
for x in xs and y in ys:
Run Code Online (Sandbox Code Playgroud)
要么
for x in xs:
for y in ys:
Run Code Online (Sandbox Code Playgroud)
但这些似乎都没有给出预期的结果.
Dav*_*son 12
使用该zip函数以及元组解包:
for x, y in zip(xs, ys):
print x, y
Run Code Online (Sandbox Code Playgroud)
在你的情况下,根据你需要xs和你的需要ys,你可以csv.reader直接迭代:
with filein as f:
reader=csv.reader(f)
for x, y in reader:
print x, y
Run Code Online (Sandbox Code Playgroud)
这zip(xs, ys)条线有效地扭转了你的xs, ys = zip(*reader)路线.
使用邮编:
>>> L=[1,2,3]
>>> M=[4,5,6]
>>> for a,b in zip(L,M):
... print(a,b)
...
1 4
2 5
3 6
Run Code Online (Sandbox Code Playgroud)