python,pyqt,一个文件用另一个文件的全局变量,居然报'module' object has no attribute

xxdd11223
  • 439
这个是uitest.py文件的

if __name__ == "__main__":
    global ui
    import sys
    app = QtGui.QApplication(sys.argv)
    Dialog = QtGui.QDialog()
    ui = Ui_Dialog()
    ui.setupUi(Dialog)
    Dialog.show()
    sys.exit(app.exec_())
    
这个是另一个py文件,我想调用上面那个py文件的ui变量,然后报错'module' object has no attribute ‘ui'

uitest.ui.tableWidget.setColumnCount(9)
回复
阅读 4.9k
2 个回答

没太懂题主为什么要这么做,但是如果要获取另一个文件的变量,建议可以写一个函数,这样好一点。

比如你所要调用的变量ui在 test1.py文件中,那么在test1.py中你可以写上这么一个函数

class Test():
    def __init__():
        ...
        
    def getUi():
        return ui

然后在test2.py代码示例:

test = Test()
ui = test.getUi()

这样就可以了

同意并接受
  • 7.2k

你是如何导入uitest的?


改成这样~

global ui
if __name__ == "__main__":
    #…………
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏