У меня есть некоторый опыт программирования, но я очень плохо знаком с python и пытаюсь выяснить, как использовать и импортировать классы из файлов .py, кроме основного.В настоящее время я использую NetBeans под управлением CPython 3.2.1.
С моей настройкой прямо сейчас все мои .py файлы находятся в одной папке.Игнорируя, что на самом деле представляет собой контент, он выглядит примерно так:
pythonprogram.py
from otherfile import *
obj = classB()
print(obj.run())
def method1():
dostuff
otherfile.py
import pythonprogram
class classA:
def __init__(self, thing1=None, thing2=None):
self.thing1 = thing1
self.thing2 = thing2
def run():
pythonprogram.method1()
return something
class classB(classA):
def __init__(self):
super(thing1=None, thing2=None) #this will be more meaningful later
def run():
do some stuff
return super().run()
Как только я доберусь до строки, гдеЯ создаю obj, я получаю следующую ошибку:
Traceback (more recent call last):
C:\users\me\projects\pythonprogram.py in line 4 in <module>
from room import *
C:\users\me\projects\otherfile.py in line 4 in <module>
import pythonprogram
C:\users\me\projects\pythonprogram.py in line 13 in <module>
obj = classB()
Будучи незнакомым с python, кто-то, возможно, захочет сообщить мне, правильно ли я использую super, теперь, когда я об этом думаю, но этоне в этом суть (и это, конечно, не та ошибка, с которой я сейчас сталкиваюсь).
Мне было трудно найти учебник или другой вопрос, который напрямую связан с моей ошибкой, ноэто, вероятно, только потому, что я настолько незнаком с питоном, что пропускаю его, когда вижу его;так что если кто-то хочет указать мне правильный учебник, это тоже хорошо.
В противном случае, я просто хотел бы знать, что я делаю неправильно с точки зрения того, как я все настраиваю, и как я должен исправитьэто.
Если это поможет, я сначала научился на Java и могу также использовать C # и C ++.