草庐IT

post_init

全部标签

python - 在 `super()` 内使用 `__init_subclass__` 找不到父类的类方法

这个问题在这里已经有了答案:Whydoesaclassmethod'ssuperneedasecondargument?(1个回答)3年前关闭。我尝试从__init_subclass__中访问父级的类方法但是这似乎不起作用。假设以下示例代码:classFoo:def__init_subclass__(cls):print('init',cls,cls.__mro__)super(cls).foo()@classmethoddeffoo(cls):print('foo')classBar(Foo):pass产生以下异常:AttributeError:'super'objecthasnoa

python - 编译错误。属性错误 : 'module' object has no attribute 'init'

这是我的小程序,importpygamepygame.init()这是我的编译命令。pythonmyprogram.py编译错误,File"game.py",line1,inimportpygameFile"/home/ubuntu/Documents/pygame.py",line2,inpygame.init()AttributeError:'module'objecthasnoattribute'init'Ihavepygameinstalledinmyubuntu,Itisinstalledin/usr/lib/python2.6/dist-packages/pygame我从I

python - 几个模块的 Pytest init 设置

假设我有下一个测试结构:test/module1/test1.pymodule2/test2.pymodule3/test3.py我如何设置某些方法在所有这些测试之前只调用一次? 最佳答案 您可以使用自动装置:#contentoftest/conftest.pyimportpytest@pytest.fixture(scope="session",autouse=True)defexecute_before_any_test():#yoursetupcodegoeshere,executedaheadoffirsttest参见pyt

jquery - 如何从 AJAX post 获取 Flask 中的数据

我想从变量“clicked”中检索数据,以便我可以在Flask的SQL查询中使用它。JQuery$(document).ready(function(){varclicked;$(".favorite").click(function(){clicked=$(this).attr("name");$.ajax({type:'POST',url:"{{url_for('test')}}",data:clicked});});});flask/python@app.route('/test/',methods=['GET','POST'])deftest():returnrender_te

python - __init__ 类(不是实例 __init__)

这是我试图解决的一个非常简单的例子:classTest(object):some_dict={Test:True}问题是我无法在Test仍在定义时引用它通常,我会这样做:classTest(object):some_dict={}def__init__(self):ifself.__class__.some_dict=={}:self.__class__.some_dict={Test:True}但我从未创建此类的实例。它实际上只是一个容纳一组相关函数和数据的容器(我有几个这样的类,我传递了对它们的引用,所以Test有必要成为它自己的类)所以我的问题是,我如何在定义Test时引用它,或

python - python 中包的 API。在 __init__.py 中?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。Improvethisquestion我写了一个python包,它由几个包含类等的.py文件组成。我想使用“外观”模式将它公开给客户端。所以我不希望客户端学习所有的内部类,而只学习这个API接口(interface)公开的方法。问题是:我应该把这个api放在哪里?我是在包中定义一个文件api.py还是可以将此api放在包的__init__.py中?我用一个例子解释得更好\__init__.pycore.pysubmodule1

python - 如何使用 __init__.py 使 Sphinx 尊重将类导入包

我有一个包裹:富foo.pybar.py__初始化__.pyfoo.py有一个Foo类。在__init__.py中,我导入类Foo以便用户可以执行以下操作:fromfooimportFooSphinx正确地将Foo记录为foo.foo.Foo,这是正确的,但让用户感到困惑。如何让Sphinx将其记录为foo.Foo?获取与正确模块关联的整体模块文档也很重要。Sphinx文档称为:..module::module.name但是当我在foo.py文件的第一个注释中使用它时,该文档仍然归因于foo.foo。 最佳答案 __module__

python - 为什么 Django post_save 信号给我 pre_save 数据?

我试图将一个“信息”对象连接到许多“客户”(参见下面的代码)更新一个信息对象时,我想向连接到该信息的每个客户发送电子邮件。但是,当我记录信号接收到的sold_to字段时,我总是在保存之前了解数据的情况。我猜这是因为它的ManyToManyField和数据存储在一个单独的表中,但是在所有关系都更新后不应该调用post_save信号吗?有人对解决方案有建议吗?classCustomername=models.CharField(max_length=200)category=models.ManyToManyField('Category',symmetrical=False)contac

python - 当类实例由构造函数或 __new__ 创建时,确保 __init__ 只被调用一次

我试图理解当创建过程可以通过构造函数或通过__new__方法时,应该如何创建Python类的新实例。特别是,我注意到在使用构造函数时,__init__方法将在__new__之后自动调用,而当直接调用__new__时,__init__类不会被自动调用。我可以通过在__new__中嵌入对__init__的调用,在显式调用__new__时强制调用__init__,但是然后__init__将在通过构造函数创建类时最终被调用两次。例如,考虑下面的玩具类,它存储一个内部属性,即一个名为data的list对象:将此视为向量类。classMyClass(object):def__new__(cls,*

python - 在 Flask 中使用 url_for 发出 POST 请求

我正在尝试在Jinja中发出POST请求Flask中的模板.但是,默认情况下参数是通过GET传递的,并且这种特定方法只接受POST请求。我尝试指定_method,如下所示,但它仍然使用GET而不是POST传递参数。{{s.title}}-{{song.owner}}(无论我是否指定_method,错误信息都是一样的)。 最佳答案 所有链接都是GET请求。您不能强制执行POST。另一种方法是这样的:@app.route('/save_info/',methods=['GET','POST'])defsave_info(filepath