2015-07-21 58 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

相关问题