ImportError: No module named generator.generator
- 场景复现
python工程中新建目录(folder)之后新建文件(test.py)进行相关的实现,编译时报上面的错误。
- 分析
python工程中新建目录之后需要在相应的目录中新建__init__.py的python文件表明该文件不是简单的目录,而是一个packet。
- 使用方式
在folder目录下生成__init__.py,在需要调用的地方
import folder.test之后就可以正常使用了
TypeError: ‘module’ object is not callable
- 场景复现
from lxml import etree
import StringIO
dtd = etree.DTD(StringIO('<!ELEMENT a (a|b)+>'))
content = dtd.elements()[0].content
print (content)
- 分析
Python导入模块的方法有两种:import module 和 from module import,区别是前者所有导入的东西使用时需加上模块名的限定,而后者不要。
- 使用方式
from lxml import etree
import StringIO
dtd = etree.DTD(StringIO.StringIO('<!ELEMENT a (a|b)+>'))
content = dtd.elements()[0].content
print (content)
from lxml import etree
from StringIO import StringIO
dtd = etree.DTD(StringIO('<!ELEMENT a (a|b)+>'))
content = dtd.elements()[0].content
print (content)
struct.error: argument for ‘s’ must be a bytes object
- 场景复现
ss = "Hello"
str = struct.pack("<iq5sd",8,6,"Hello",8.0)
print(str)
- 分析
Python3.0,格式化字符串的值在Python的类型是bytes类型。所以我们需要在bytes类型前面加上一个b
- 使用方式
ss = "Hello"
str = struct.pack("<iq5sd",8,6,b"Hello",8.0)
print(str)
error: extra characters after test expression
工程中的.pro文件中
HEADERS += Qt/mainwindow.h \
Qt/MPrintableWidget.h \
Qt/MPrintableWidgetGroup.h # Oooops forgot the \ here
Qt/MFixedSizeDialog.h \
Qt/MScreenPage.h
error C2504: 未定义基类
- 场景复现
B是基类,A继承B,A包含B.h,B包含A.h - 解决方法
B不包含A.h,在B.h添加class A即可
参看博客
error: C2248: “QObject::QObject”: 无法访问 private 成员(在“QObject”类中声明)
出现该问题的原因是Qset中使用的类中没有添加复制构造函数
参看博客