2011-08-18 88 views
0

這是我的腳本的一部分:做一個列表出來的變量

for line in range(0,len(lines),2): 
     num = lines[line].split()[8] 
     num1= abs(num) 

很顯然,我可以從每一行這裏產生許多NUM1 ....

在這裏,我希望把所有這些NUM1成一個列表,那我該怎麼辦? THX

對不起球員,這是蟒蛇!大聲笑

+5

指定您使用的語言是個好主意。 –

+0

順便說一句你的代碼實際上工作? 'abs(int(num))'? –

回答

-1
newlist.add(num1) 

你想要做什麼語言?

+0

解決方案爲未知的語言。這很好。 –

4
li = [] 
for line in range(0,len(lines),2): 
     num = lines[line].split()[8] 
     li.append(abs(num)) 

li = [abs(lines[line].split()[8]) for line in range(0,len(lines),2)] 
+1

+1代碼未知lang – samccone

+1

我不認爲你需要'line'計數器。你不能[如果不是我%2 ABS(line.split()[8])對我,行enumnerate(系)]' 而不是做'? – inspectorG4dget

+0

@ inspectorG4dget:當然:) –

0

在Python中,我們直接迭代。你想要從行列表中的項目,所以要求列表中的項目。不要索要數字索引,然後索引到列表中。

因爲我們想每隔一行,要做到這一點最簡單的方法是隻「切片」列表中。

我們可以用一個列表理解建立結果列表。不要浪費你的呼吸,告訴Python如何把東西放在一起。只要告訴它應該包括什麼。

哦,並且指出,該列表包含字符串,砍它產生更多的字符串,我們不能申請abs爲字符串。我們需要首先明確地轉換結果。

result = [abs(int(line.split()[8])) for line in lines[::2]] 
相關問題