python - 我怎么能叫这个类?
问题描述
class average :
def myinput():
n=0
mylist=[]
#will be ended when input = -1
while n !='-1' :
n=raw_input('>>>')
if n!='-1' :
mylist.append(n)
print lol(mylist)
def lol(mylist):
try:
mysum=0.0
for i in mylist :
mysum=mysum+int(i)
return mysum/len(mylist)
except:
return 'please don\'t Enter charecters just Number'
ave=average
ave.myinput()
这段代码有什么问题?
$ winpty python test3.py Traceback(最近一次调用最后一次):
文件“test3.py”,第 20 行,在
ave.myinput() 类型错误:未绑定的方法 myinput() 必须以
平均实例作为第一个参数调用(什么都没有反而)”””
解决方案
首先,您应该重命名您的类,Python 命名约定非常强大,并且类应始终以大写字母开头。
然后回答:你只是忘记了()
ave = Average()
ave.myinput()
你应该把类实例放在每个方法中:
def myinput(self): ...
def lol(self, mylist):
推荐阅读
- javascript - 将自定义日期格式添加到 JSP html 代码
- python - 终端问题“'django.forms.models'没有属性'Model'
- java - 传入消息在来自 Azure 服务总线主题订阅的侦听器之间分配
- c# - 在 Visual Studio 的 imagelist 中替换图像而不更改索引
- python - Python def 函数在所有情况下都返回 None
- c++builder - 如何防止这个错误?Vcl.Forms.hpp(925): E2316 'FMenu' 不是 'TCustomForm' 的成员
- r - 在 R 中使用 diffObj 时显示新行(不是新行字符)?
- bash - 为什么我的代码破坏了当前行?
- laravel - 雄辩的查询刀片视图样式更好?
- python - 为什么 Matplotlib/seaborn alpha 参数不采用列表或数组?