2016-10-09 9 views
-1

文字列と列番号としてCSVファイル名を指定すると、その特定の列に異なる値を持つ配列を作成する関数を記述する必要があります。ファイル。私の最初の列がPythonリストのように0であると仮定します。このファイルにはヘッダーとフッターの行もあります。CSVファイルの特定の列の配列を作成するPython関数

import csv 

def facet(file, column): 
    """ (str, int) -> array 
Gets a list of distinct values from the specified column in the input file. 
""" 
+0

それでは、私の助言は書いてみることです。スタックオーバーフローはコード記述サービスではありません。何を試しましたか?組み込みの 'csv'モジュールを見ましたか?それを使用する方法について質問がありますか?具体的にしてください。また、 'array'と言うと、Pythonの' list'を意味しますか?彼らは同じことではないからです。 –

+0

実際の問題は何ですか? – MisterMiyagi

答えて

0

次のことを試してみてください。

import csv 

def facet(file, column): 
    with open(file, newline='') as f_input: 
     return [row[column] for row in csv.reader(f_input)][1:-1] 

print(facet('input.csv', 1)) 

ザ・はcsvとしてファイルを読み込み、各行からのみだけのセルを選択し、リストを構築するために、リスト内包表記を使用しています。最後に[1:-1を使用してファイル内のヘッダーとフッターをスキップします。

関連する問題