Python从txt文件中读取(分析食物网)

时间:2014-04-11 04:12:19

标签: python file

第1部分:

它要求列出每个捕食者在一条线上吃的所有东西。例如,如果您的文件包含以下行:

lion eats zebra 
lion eats gazelle 
lion eats wildebeest

然后输出应该是:

lion eats zebra, gazelle, and zebra

2部分:

它要求确定食物网中不会被另一种生物吃掉的物种的顶级捕食者。

我不知道该怎么做才能帮助我!

1 个答案:

答案 0 :(得分:0)

假设输入文件名为predators.txt并具有以下内容:

lion eats zebra
zombie eats snow lion
lion eats gazelle
lion eats wildebeest
zombie eats brains

以下脚本生成输出:

lion eats zebra, gazelle, and wildebeest
zombie eats snow lion, and brains

如果这是您需要的输出,您可以高兴地提交以下脚本作为您的作业:

#! /usr/bin/python3
print((lambda a,_: '\n'.join
('{} eats {}'.format(b, ', '
.join(c)[::-1].replace(',',
'dna ,',1)[::-1])for b,c in
a.items()))(*(lambda a,b:(a,
[a[c].append(d)if c in a else
a.update({c:[d]})for c,_,d in
b]))({},[a.strip().split(
maxsplit=2)for a in open
('predators.txt')])))