函数NameError [英] Functions NameError
本文介绍了函数NameError的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我一直在搞一些代码,试图创建一个工作计划的功能。但是我卡住了,想知道有人可以帮忙吗?谢谢
class Work_plan(object):
def __init __(self,hours_work,work_len,work_des):
self.hours_work = hours_work
self.work_len = work_len
self.work_des = work_des
$ b work_load = []
hours_worked = []
hours_worked > hours_work:
print工作太多!
else:
work_load.append(work_des)
hours_worked.append(work_len)
print工作已经添加到您的工作计划中!
work_request = Work_plan(8,2,task1)
Work_plan
print work_load
它出现错误:
NameError:名称'work_load'未定义
解决方案你在类的
__ init __
中定义了变量 work_load
,所以你不能访问它如果你想访问 work_load
,使它成为<$ $的对象的一个属性。 c $ c> Work_plan 类,并通过执行 object.work_plan
例如:
class Work_plan(object):
def __init __(self,hours_work,work_len,work_des):
self.hours_work = hours_work
self.work_len = work_len
self.work_des = work_des
self.work_load = []
self.hours_worked = [ ]
如果hours_worked> hours_work:
print工作太多!
else:
self.work_load.append(work_des)
self.hours_worked.append(work_len)
print工作已经添加到您的工作计划中!
work_request = Work_plan(8,2,task1)
Work_plan
print work_request.work_load
I have been messing around with some code, trying to create a function for work planning. However I am stuck and wondered if someone could help? Thanks
class Work_plan(object):
def __init__(self,hours_work,work_len, work_des):
self.hours_work = hours_work
self.work_len = work_len
self.work_des = work_des
work_load = []
hours_worked = []
if hours_worked > hours_work:
print "Too much work!"
else:
work_load.append(work_des)
hours_worked.append(work_len)
print "The work has been added to your work planning!"
work_request = Work_plan(8, 2, "task1")
Work_plan
print work_load
it comes up with the error: NameError: name 'work_load' is not defined
解决方案
You defined the variable work_load
inside the __init__
of the class, so you can't access it outside this scope.
If you want to have access to work_load
, make it an attribute for objects of Work_plan
class, and the access it by doing object.work_plan
For example:
class Work_plan(object):
def __init__(self,hours_work,work_len, work_des):
self.hours_work = hours_work
self.work_len = work_len
self.work_des = work_des
self.work_load = []
self.hours_worked = []
if hours_worked > hours_work:
print "Too much work!"
else:
self.work_load.append(work_des)
self.hours_worked.append(work_len)
print "The work has been added to your work planning!"
work_request = Work_plan(8, 2, "task1")
Work_plan
print work_request.work_load
这篇关于函数NameError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文