2014-04-11 33 views
-2

第1部分:Python從txt文件中讀取(分析食物網)

它要求列出每個捕食者在一條線上吃的所有東西。例如,如果你的文件包含行:

lion eats zebra 
lion eats gazelle 
lion eats wildebeest 

那麼輸出應該是這樣的:

lion eats zebra, gazelle, and zebra 

第2部分:

要求它來識別頂級掠食者這是在物種沒有被另一個有機體食用的食物網。

我不知道該怎麼做plz幫助我thx!

+0

具體與您的要求是什麼你想知道,邏輯代碼等? –

+2

我們不是家庭作業服務。發佈你先試過的代碼。 – IanAuld

回答

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')])))