相关疑难解决方法(0)

调用类方法会在Python中引发TypeError

我不明白如何使用类.当我尝试使用该类时,以下代码给出了一个错误.

class MyStuff:
    def average(a, b, c): # Get the average of three numbers
        result = a + b + c
        result = result / 3
        return result

# Now use the function `average` from the `MyStuff` class
print(MyStuff.average(9, 18, 27))
Run Code Online (Sandbox Code Playgroud)

错误:

File "class.py", line 7, in <module>
    print(MyStuff.average(9, 18, 27))
TypeError: unbound method average() must be called with MyStuff instance as first argument (got int instance instead)
Run Code Online (Sandbox Code Playgroud)

怎么了?

python methods class python-3.x

71
推荐指数
3
解决办法
14万
查看次数

为什么会话方法在sqlalchemy中使用sqlite解除绑定?

代码复制错误:

from sqlalchemy import create_engine, Table, Column, Integer
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

Base = declarative_base()

class Message(Base):
    __tablename__ = 'messages'

    id = Column(Integer, primary_key=True)
    message = Column(Integer)


engine = create_engine('sqlite:///' + filename_of_your_choice)
session = sessionmaker(bind=engine)

newmessage = Message()
newmessage.message = "Hello"

messages = session.query(Message).all()
Run Code Online (Sandbox Code Playgroud)

运行此代码会产生:

Traceback (most recent call last):
  File "C:/aaron/test.py", line 20, in <module>
    session.commit()
TypeError: unbound method commit() must be called with Session instance as first argument (got nothing instead)
Run Code Online (Sandbox Code Playgroud)

我95%肯定文件名不是问题,因为我可以从shell连接到它

有任何想法吗?

python sqlite sqlalchemy

7
推荐指数
1
解决办法
2090
查看次数

标签 统计

python ×2

class ×1

methods ×1

python-3.x ×1

sqlalchemy ×1

sqlite ×1