Найти - Пользователи
Полная версия: Работа с модулем и методами - name 'example1' is not defined (дурацкий вопрос)
Начало » Python для новичков » Работа с модулем и методами - name 'example1' is not defined (дурацкий вопрос)
1
ReKoder
Что-то я никак не подружусь с вызовом модулей, функций и видимостью переменным, ну и ООП до кучи.
Подскажите пж ответ на дурацкий вопрос.
Итак, есть класс MyKlass записанный в файле my_md1.py. У класса есть метод do_smth()

Вызываю в отдельном модуле этот метод:

from my_md1 import *

def my_function(mr):
y = mr.do_smth (сейчас исправил на MyKlass.do_smth - даже тянется в выпадающем списке подсказок набора его метод do_smth)
return y

здесь my_function(mr) - это некая функция от mr.
mr - это объект, создается в командной строке интерпретатора так.
Вызываю так:
>>> example1 = {'m': , ‘s’: (0,0), ‘f’: (4,4)
далее создаем экземпляр класса >>>
mr = MyKlass(example1['m'], example1['s'], example1['f'])
Ну и вызов функции из интерпретатора делаем: >>> my_function(mr)

Так вот, до вызова функции даже не доходит дело. Сначала выдается:
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
NameError: name 'example1' is not defined

В некоторых случаях проскакивает и далее выдает ошибку “File ”“, line 1, in NameError: name ‘mr’ is not defined”, в общем до вызова функции не доходит дело.
Я уже строку импорта по-всякому пытался записать, и просто import my_md1 и т.д.

Завис - не могу сообразить, где туплю. Но где-то в элементарщине.

з.ы. Работаю в PyScripter, но проблема вряд ли этой программы.
py.user.next
ReKoder
Вызываю в отдельном модуле этот метод:
Функцию модулем называешь, тогда как модуль в питоне - это файл.

ReKoder
Итак, есть класс MyKlass записанный в файле my_md1.py.
Вот этот файл my_md1.py является модулем my_md1.

ReKoder
mr - это объект, создается в командной строке интерпретатора так.
Код пиши в теге кода, иначе стираются символы.

ReKoder
NameError: name 'example1' is not defined
Значит, не создался тот словарь.
ReKoder
py.user.next
Функцию модулем называешь, тогда как модуль в питоне - это файл.
Не-не, вот именно что речь шла об отдельном файле.
А вообще - спасибо, именно не создался тот словарь. Попробовал по-другому.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB