如何在Python中连接列表的相应元素

2024-10-02 08:30:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个名为ids.txt的文件,也有一个名为names.txt的文件

ids.txt文件中,我们看到:

23
422
5123
642
8743

names.txt文件的内容:

jon1
jon2
jon3
jon4
jon5

我想这样分类:

23 jon1
422 jon2
5123 jon3
642 jon4
8743 jon5;

最后一个排序后,就这样设置

8743 jon5;

我要做的是:

IDs = file("IDs.txt").read().splitlines()
names = file("names-specialitys.txt").read().splitlines()
for i in IDs:
    for n in names:
        print i, n

但它是这样打印的:

23 jon1
422 jon1
5123 jon1
642 jon1
8743 jon1
23 jon2

。。。等等


Tags: 文件intxtidsforreadnamesfile
2条回答

你可以把这些列表放在一起。你知道吗

for i, n in zip(IDs, names):
    print i, n

要以不同的方式显示最后一行,可以在压缩列表之前对其进行切片。然后分别打印最后一行。你知道吗

for i, n in list(zip(IDs[:-1], names[:-1]):
    print("{} {}".format(i, n))
print("{} {};".format(IDs[-1], names[-1]))

“Zip”y解释:

Python内置了一个强大的zip()函数。它接受两个列表,并在数组中的同一点将每个项与该项连接起来。你知道吗

示例:

a = b = c = range(20)
zip(a, b, c) #=> [(0, 0, 0), (1, 1, 1), ... (18, 18, 18), (19, 19, 19)]

您的解决方案:

for i, n in zip(IDs, names):
    print i + " " + n

相关问题 更多 >

    热门问题