我有两个文本文件,”动物.txt“和”颜色.txt“如下所示,每行中的2个字符串用制表符分隔。在
““动物.txt““
12345 dog
23456 sheep
34567 pig
““颜色.txt““
^{pr2}$我想编写Python代码:
output1,包含动物.txt+的第二列中的值颜色.txt对应于查询值(12345):
12345 dog black
23456 sheep white
34567 pig pink
output2包含的第二列中的值的列表颜色.txt对应于查询值(12345、23456、34567)):
black
white
pink
你需要使用python吗?如果您正在使用bash并且输入未排序,请执行以下操作:
如果没有支持进程替换的shell,请对输入文件进行排序并执行以下操作:
^{pr2}$其中
<tab>
是实际的制表符。根据您的shell,您可以使用ctrl-V和tab键来输入它。(或对剪切使用不同的分隔符。)我会用熊猫
结果:
^{pr2}$然后按id的顺序将颜色输出到文件:
如果无法将列标题添加到文本文件,则可以在导入时添加它们
如果顺序无关紧要,这就成了一个相当简单的问题:
通过
defaultdict
可以更优雅地实现这一点,当遇到某个特定的键时,将其附加到一个列表中,然后在编写时,在输出之前测试列表的长度是否为2,但是,我不认为这种方法更好。在相关问题 更多 >
编程相关推荐