ここでクラスを書くのは初めてで、少し助けが必要です。
最初にタブ区切りのcsvファイルを取得して辞書のリストを出力するクラスを作成しようとしています。ディクショナリの各キーは、csv の列タイトルです。
これまでのところ、これは私のクラスがどのように見えるかです:
import csv
class consolidate(object):
def __init__(self, file):
self.file = file
def create_master_list(self):
with(open(self,'rU')) as f:
f_d = csv.DictReader(f, delimiter = '\t')
m_l = []
for d in f_d:
m_l.append(d)
return m_l
次のように、ファイルを渡そうとすると:
c = consolidate()
a = c.create_master_list('Abilities.txt')
次のエラーが表示されます。
TypeError: __init__() takes exactly 2 arguments (1 given)
ファイル引数を関数に渡したいことはわかっていますがcreate_master_list
、これを行うための正しい構文がわかりません。
私はself.file
andfile
を引数として試しましたが、どちらもうまくいきません。
ありがとう!