Помогите с доступом к переменной модуля внутри функции Python? - PullRequest
1 голос
/ 10 августа 2011

У меня есть следующая функция в модуле Python, называемая dictbuilder.py:

def my_dictbuilder(reader_o, writer):
    fieldnames = ('name', 'number')
    reader = csv.DictReader(reader_o, fieldnames = fieldnames, delimiter="\t")
    my_dict = {}
    id = 0
    for row in reader:
       id += 1
       my_dict[id] = row['name'], row['number']
       id += 1
    return(my_dict)

Я импортировал и вызвал эту функцию из модуля main.py. Я также хотел бы использовать переменную my_dict из модуля dictbuilder.py, который я импортировал в main.py. Когда я пытаюсь напечатать my_dictbuilder.mydict, я получаю эту ошибку:

AttributeError: 'function' object has no attribute 'my_dict'

Может кто-нибудь помочь мне понять, как получить доступ к переменной my_dict из моего файла main.py? Спасибо за помощь!

1 Ответ

1 голос
/ 10 августа 2011

Ну, вы возвращаете my_dict, поэтому просто сохраняйте возвращаемое значение в главном модуле, когда вы его вызываете.

my_dict = dictbuilder.my_dictbuilder(reader_o, writer)
...