class MyClass:
sample=0
w=0
b=0
g=0
o=0
color_list=['black','white','gray']
def __init__(self):
print("Enter Your Name")
MyClass.name=input()
print("What's the color of ur car?")
MyClass.color=input()
MyClass.sample=MyClass.sample+1
def check_color(self):
if MyClass.color in MyClass.color_list:
if MyClass.color==MyClass.color_list[0]:
MyClass.b=MyClass.b+1
elif MyClass.color==MyClass.color_list[1]:
MyClass.w=MyClass.w+1
else:
MyClass.g=MyClass.g+1
else:
MyClass.o=MyClass.o+1
def display_result(self):
print("Hello :",MyClass.name)
print("Total number of black cars",MyClass.b)
print("Total number of white cars",MyClass.w)
print("Total number of gray cars",MyClass.g)
print("Other cars",MyClass.o)
print("Sample Size",MyClass.sample)
var=0
mylist=[]
while var<4:
mylist.append(MyClass())
mylist[var].check_color()
mylist[var].display_result()
var=var+1
Ошибка в Python IDLE:Класс не определен
==== RESTART: C:/Python34/Practice Programs/TBT Tutorials/Day 4/class.py ====
Traceback (most recent call last):
File "C:/Python34/Practice Programs/TBT Tutorials/Day 4/class.py", line 1, in <module>
class MyClass:
File "C:/Python34/Practice Programs/TBT Tutorials/Day 4/class.py", line 41, in MyClass
mylist.append(MyClass())
NameError: name 'MyClass' is not defined
я не уверен, если я установил свои отступы, так как он выглядит как основная часть коды в определении класса, могли бы вы пожалуйста [ отредактируйте] (http://stackoverflow.com/review/spected-edits/12729507) ваш вопрос, если я не понял это правильно. –
Используйте 'self' для обращения к экземпляру, из которого может быть больше одного. 'MyClass' относится к самому классу и недоступен до тех пор, пока класс не будет определен. У вас также есть много кода класса, который может быть не таким, каким вы хотите. –