2015-07-21 38 views
-1

這是一個非常基本的問題,但我很難理解這是爲什麼。爲什麼我的列表會返回字符而不是項目?

以與新線分離,列出一個文件,如果我使用這個腳本...

#!/usr/bin/python 

import sys 

fil = open(sys.argv[1]) 

for line in fil: 
    linearr = line.strip('\n') 
    print linearr[0] 

我回來了「[」(第一列表的性格,開始支架)。

爲什麼打印此字符而不是列表中的第一項?是否因爲列表已經存在於文件中,而您沒有將它們放在腳本中?

名單看​​起來就像這樣......

['fig|357276.26.peg.4402', 'COG0776'] 

,它應該打印的第一個項目,但沒有。

+0

你對它執行一個字符串方法,然後想知道它爲什麼像一個字符串? – TigerhawkT3

回答

-1

linearr是一個字符串。您將返回字符串中的第一個字符。你的意思是做split()嗎? Split是你從一個字符串中創建一個數組所需要的。

+0

*分割就是你需要從一個字符串中創建一個數組*這是真實的,但不是OP所需要的 –

+0

他希望從每一行(這是一個字符串)解析出一個列表,這樣他就可以得到第一個條目。他應該去掉條(包括括號),然後在','處進行分割以獲得第一個條目。不知道你是什麼意思,他正在尋找。 – Javeed

相關問題