鱼C论坛

 找回密码
 立即注册
查看: 3698|回复: 2

import问题,求解,谢谢

[复制链接]
发表于 2023-7-19 01:07:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import sys
from PyQt6 import QtWidgets

app = QtWidgets.QApplication(sys.argv)

----------------------------------------------------------------------------
为什么这样导入没问题,但是
----------------------------------------------------------------------------
import sys
import PyQt6

app = PyQt6.QtWidgets.QApplication(sys.argv)

AttributeError: module 'PyQt6' has no attribute 'QtWidgets'

----------------------------------------------------------------------------
这样导入就不行呢???

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-7-19 06:20:21 | 显示全部楼层
from PyQt6 import QtWidgets  这样的导入方式是特定导入,你明确的告诉Python你要从PyQt6模块中导入QtWidgets这个部分。因此你可以直接使用  QtWidgets.QApplication(sys.argv) 。

而  import PyQt6  是一种更泛化的导入方式,你告诉Python你想要导入PyQt6模块,但并没有明确要使用该模块的哪个具体部分。因此,当你试图访问  PyQt6.QtWidgets  时,Python告诉你PyQt6模块并没有名为 "QtWidgets" 的属性。这是因为 "QtWidgets" 实际上是PyQt6模块的子模块,并不是其属性,所以你无法通过  PyQt6.QtWidgets  的方式访问它。


如果你想要用第二种导入方式也能实现相同的效果,那么你应该使用  import PyQt6.QtWidgets  这样的导入方式,然后你就可以通过  PyQt6.QtWidgets.QApplication(sys.argv)  的方式创建 QApplication 对象了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2023-7-19 17:50:28 | 显示全部楼层
isdkz 发表于 2023-7-19 06:20
from PyQt6 import QtWidgets  这样的导入方式是特定导入,你明确的告诉Python你要从PyQt6模块中导入QtWid ...

好的,感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-14 18:14

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表