删除Python列表括号

删除Python列表括号,python,list,procedure,Python,List,Procedure,因此,我试图将CSV文件中的股票代码列表添加到python列表中 CSV文件如下所示: AAPL XOM EMC 使用库存清单[]时。如何删除[“”]括号和引号 我的代码如下: stockList = [] csvReader = csv.reader(open('tickers.csv','rb'), quoting=csv.QUOTE_NONE) for row in csvReader: stockList.append(row) for item in stockList:

因此,我试图将CSV文件中的股票代码列表添加到python列表中

CSV文件如下所示:

AAPL
XOM
EMC
使用库存清单[]时。如何删除[“”]括号和引号

我的代码如下:

stockList = []
csvReader = csv.reader(open('tickers.csv','rb'), quoting=csv.QUOTE_NONE)
for row in csvReader:
    stockList.append(row)

for item in stockList:
    print repr(item)
例如,当运行上述代码时,它会输出:

['AAPL']
['XOM']
['EMC']

看起来CSVReader正在返回一个行列表。以这种方式修改代码

for row in csvReader:
    row = "".join(row)
    stockList.append(row)

看起来CSVReader正在返回一个行列表。以这种方式修改代码

for row in csvReader:
    row = "".join(row)
    stockList.append(row)

如果您的数据只是一个文本文件,每个符号后都有一个换行符,只需使用
readlines

fh = open('tickers.txt', 'rb')
stockList = [x.rstrip('\n') for x in fh]
这将返回给您:

['AAPL', 'XOM', 'EMC']

更简单。

如果您的数据只是一个文本文件,每个符号后都有一个换行符,那么只需使用
readlines

fh = open('tickers.txt', 'rb')
stockList = [x.rstrip('\n') for x in fh]
这将返回给您:

['AAPL', 'XOM', 'EMC']

更容易。

如果只是一个符号列表,
csv
是不合适的;只需读取文件中的行。这不是CSV文件。CSV将具有“逗号分隔值”。您刚刚得到一个文本文件。如果它只是一个符号列表,
csv
是不合适的;只需读取文件中的行。这不是CSV文件。CSV将具有“逗号分隔值”。您刚刚得到一个文本文件。实际上,它将返回
['AAPL\n',XOM\n',EMC\n']
,也许您需要类似
stockList=map(str.rstrip,fh)
@NiklasB.:但这对Unicode数据不起作用(尽管我知道您不会在股票符号中得到它);一个更具python风格的解决方案是
stocks=[x.rstrip('\n'),用于fh中的x]
@Chris:你说得对。作为记录:列表理解更好,因为它对
x
类型使用了适当的
rstrip
方法。我更想指出的是,他的文件不是CSV,而且比他制作的要容易得多。问题已更新。@tkone将
stockList=[x.rstrip()用于fh.readlines()中的x
工作得更好吗?我以为windows有一些奇怪的行尾,比如“\r\n”。实际上它将返回
['AAPL\n','XOM\n','EMC\n']
,也许你想要类似
stockList=map(str.rstrip,fh)
@NiklasB的东西。除了这对Unicode数据不起作用(尽管我承认你不会在股票符号中得到它);一个更具python风格的解决方案是
stocks=[x.rstrip('\n'),用于fh中的x]
@Chris:你说得对。作为记录:列表理解更好,因为它对
x
类型使用了适当的
rstrip
方法。我更想指出的是,他的文件不是CSV,而且比他制作的要容易得多。问题已更新。@tkone将
stockList=[x.rstrip()用于fh.readlines()中的x
工作得更好吗?我认为windows有一些奇怪的行尾,比如“\r\n”。