gpt4 book ai didi

Python 3 C API。初始化 MIMEText 对象失败

转载 作者:太空宇宙 更新时间:2023-11-03 19:29:43 25 4
gpt4 key购买 nike

我希望将 Python 嵌入到 C 程序中。除此之外,Python 还会处理发送电子邮件的事务。我在使用 C 中的基本类型时没有遇到任何问题,但在使用库中的其他对象时却遇到了问题。

我希望通过以下方式实例化 MIMEText 实例:

PyObject *mimeTextModule = PyImport_ImportModule("email.mime.text");    
PyObject* sys_mod_dict = PyImport_GetModuleDict();
PyObject* main_mod = PyMapping_GetItemString(sys_mod_dict, "__main__");
PyObject* mimeText = PyObject_CallMethod(main_mod, "MIMEText", "s", "test email body");

但 mimeText 为 NULL。我也尝试过以下方法,结果相同:

PyObject *mimeTextModule = PyImport_ImportModule("email.mime.text");    
PyObject *mimeTextClass = PyObject_GetAttrString(mimeTextModule, "MIMEText");
PyObject *mimeText = PyObject_CallMethod(mimeTextClass, "__init__", "s", "test email body");

感谢帮助。

最佳答案

返回NULL意味着发生了异常,您需要check what it is .

如果你想实例化一个类,那么你可以像在 Python 中那样在 C 中进行操作:call it .

关于Python 3 C API。初始化 MIMEText 对象失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6547693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com