我收到这个错误
TypeError:super()至少接受1个参数(给定0)
在python2.7.11上使用以下代码:
class Foo(object):
def __init__(self):
pass
class Bar(Foo):
def __init__(self):
super().__init__()
Bar()
使它工作的解决方法是:
class Foo(object):
def __init__(self):
pass
class Bar(Foo):
def __init__(self):
super(Bar, self).__init__()
Bar()
似乎语法是特定于python 3的。那么,在2.x和3.x之间提供兼容代码并避免发生此错误的最佳方法是什么?
是的,0参数语法特定于Python 3,请参阅 Python
3.0
和PEP 3135的
新增功能
-New
Super
。
在Python 2和必须跨版本兼容的代码中,只需坚持明确地传入类对象和实例即可。
是的,有可用的“反向移植”使super()
Python
2(例如future
库)可以使用无参数版本,但是这些都需要大量的技巧,包括对类层次结构进行全面扫描以找到匹配的函数对象。这既脆弱又缓慢,根本不值得“带来便利”。
问题内容: 每次运行此php时,我都会不断收到相同的3个错误。我不知道我在做什么错,有人可以帮忙吗? 错误如下: [2014年5月5日19:20:50美国/芝加哥] PHP警告:mysqli_query()至少需要2个参数,第10行的/home/sagginev/public_html/Nutrifitness/search.php中提供了1个参数 [2014年5月5日19:20:50美国/芝加哥
我得到以下错误 警告:mysqli_error()只需要1个参数,给定0 问题出在代码的这一行: 整个代码是 包含的文件有以下一行
问题内容: 我正在写一小段python作为作业,但我没有让它运行!我没有太多的Python经验,但是我知道很多Java。我正在尝试实现粒子群优化算法,这就是我所拥有的: 现在,我认为没有理由不起作用。但是,当我运行它时,出现此错误: “ TypeError:updateVelocity()不接受任何参数(给定1个)” 我不明白!我没有给它任何论点! 谢谢您的帮助, 莱纳斯 问题答案: Python
问题内容: 按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 我收到以下错误 警告:mysqli_error()恰好需要1个参数,给定0 问题在于这行代码: 整个代码是 包含的文件具有以下行 问题答案: mysqli_er
问题内容: 对于错误: 使用以下类方法: 并调用它: 当我给它1个参数时,错误似乎很奇怪,该方法应仅接受1个参数,但这是说我没有给它1个参数....我知道可以通过添加到方法原型中来解决问题但是我想知道错误的原因。 我得到它是因为通过extractAll(“ th”)调用它的行为也作为参数传递了吗?如果是这样,通过删除调用中的,我是否可以使其成为某种可以像这样调用的类方法? 问题答案: 通话 因为常
问题内容: 我试图让我的头围绕mysql。谁能告诉我为什么这个MySQL查询无法正常工作?我收到以下错误: 警告:mysqli_error()期望恰好有1个参数,第11行的/home/freebet2/public_html/test.php中给出的参数为0 test.php db.php 如果我将alter string更改为:之类的原因,我不会收到任何错误。 问题答案: 就sql错误而言,“用