작은 프로젝트에서 작업 중이며 사용중인 오류 또는 내가 잘못하고있는 작업으로 인한 오류인지 확실하지 않습니다.자체 매개 변수에 문제가 발생했습니다.
저는 WOP IDLE에서 실행되는 Python에서 OOP을 사용하고 있습니다. Windows 8 PC에서 실행되는 Python 셸의 최신 버전이 있습니다.
내 프로그램에는 사용자 입력을 받아서 입력을 사용하여 선반을 만드는 데 필요한 매개 변수를 만드는 메서드가 있습니다.
'def subject_creator(self):
subject_name = input("Enter the subject name:")
subject_file = subject_name + "file"
name = subject_name
return subject_name, subject_file, name'
이상적 프로그램은 다음 세 가지 반환 문 새로운 선반을 여는 즉 subject_name, subject_file, 이름을 사용합니다.
'def __init__(self, subject_name, subject_file, name):
subject_name = shelve.open ("subject_file", "c")
self.name = name
print("The", self.name ,"note has been created")'
while True:
print ("""
1.Create new note
2.Add new term
3.Look up term
4.Exit/Quit
""")
ans= input("What would you like to do?: ")
if ans=="1":
subject_creator()
note = Notebook(subject_name, subject_file, name)
subject_name.sync()
그러나 나는이 프로그램을 실행하면 내 주 메뉴에서 내가 선택 위의 코드를 실행 1을 선택, 나는 수신 및 오류 상태가.
<module>
builtins.TypeError: subject_creator() missing 1 required positional argument: 'self'
위와 같이 주제 작성자 용 코드를 작성할 때 self 매개 변수가 포함되어 있기 때문에 다소 의문입니다. 이 외에도 다른 오류가 없습니다.
모든 의견을 크게 환영합니다.
'subject_creator'와'__init__' 함수 정의를 따옴표로 묶을 이유가 있습니까? –
'subject_creator' 함수에'self' 매개 변수가 필요 없습니다. –