2016-08-12 17 views
-2

私はこのようになりますCSVファイルを持っている:「ロシア」条件付きでCSVファイルの行を抽出しますか?

Germany,1928,Food 
Iceland,1943,Oil 
France,1923,Plastics 
Russia,1901,Steal 
South Africa,1932,Silver 
Russia,1905,Gold 
Brazil,1901,Platinum 

私はそれが最初の列を検索し、それが言葉に当たる場合は、行を引きたいが

これは私のコードは、現在、次のようになります。

import csv 
import sys 

with open('country.csv', 'rb') as csvfile: 
    data = csv.reader(csvfile) 
    datalist = [] 
    for row in data: 
     if len (row) != 0: 
      datalist = datalist + [row] 
csvfile.close() 

column_names = datalist[0] # LIST OF COLUMNS 

私は行全体を引っ張っについてどのように行きますか?

+0

ご質問はやや不明瞭です。 「行全体を引っ張る」という意味はどういう意味ですか?あなたはあなたのリストに行全体を追加しています。本当にやりたいことを説明してください。また、あなたのコードでは、あなたの説明にあるように、フィールドを「ロシア」と比較することはありません。 –

+0

トピックオフ: 'with open ... 'を使ってファイルを開くと、そのファイルの終了はブロックの後で自動的に行われます。 – martineau

答えて

1

filterをお試しください:

>>> filter(lambda x: x[0] == 'Russia', datalist) 
[['Russia', '1901', 'Steal'], ['Russia', '1905', 'Gold']] 
+0

それは一つです!乾杯! – semiflex

関連する問題