2012-04-01 10 views
0

これで、CSVファイルのティッカーシンボルのリストをPythonリストに追加しようとしています。Pythonリストブラケットの削除

CSVファイルは次のようになります。

AAPL 
XOM 
EMC 

stockList []での作業します。角かっこや引用符を削除するにはどうしたらいいですか?

私のコードは以下の通りです:たとえば

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'] 
+0

シンボルの単なるリストであれば、 'csv'は適切ではありません。ファイル内の行を読み込むだけです。 –

+1

これはCSVファイルではありません。 CSVには「カンマ区切り値」があります。あなたはちょうどテキストファイルを持っています。 – tkone

答えて

1

CSVReader行のリストを返しているように見えます。この方法でコードを修正してください。

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

パーフェクト。ありがとうございました。 – scriptdiddy

3

あなたのデータは戻ります、各シンボルの後に改行を持つ単なるテキストファイル

fh = open('tickers.txt', 'rb') 
stockList = [x.rstrip('\n') for x in fh] 

であれば、単にreadlinesを使用します。

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

はるかに簡単。

+1

実際に '['AAPL \ n'、 'XOM \ n'、 'EMC \ n']'を返します。おそらく 'stockList = map(str.rstrip、fh) 'のようなものが必要です。 –

+0

@NiklasB .: except Unicodeデータではうまくいかないでしょう(私はあなたが株式の記号でそれを取得しないことを認識しますが)。もっとPythonicの解決法は 'stockhs = [fhのxのためのx.rstrip( '\ n')]'です。 –

+0

@Chris:そうです。レコードの場合: 'x'の型に対して適切な' rstrip'メソッドを使用するので、リストの理解度が向上します。 –

関連する問題