簡體   English   中英

在python中將兩個文件相互導入

[英]Importing Two Files into eachother in python

我正在用 Python 制作一個文本游戲,我有兩個菜單,主菜單和攻擊菜單。 這些函數位於兩個不同的文件中。

當我from attack import *獲取攻擊菜單功能時,它可以工作,我可以調用attack_menu()函數。

但是,當我from main import *轉到我的攻擊文件,然后嘗試調用main_menu()時,它不起作用。 有沒有辦法將兩個文件相互導入而不會出錯?

正如您所發現的,循環導入不起作用。 但還有第二個問題潛伏着。 假設您將main.py作為腳本運行,它是一個名為__main__的模塊,而不是main attack導入main時,它會獲得main的第二個副本。 main進口再次attack ,你有你的循環參考。

解決方案是從main中獲取attack想要的所有內容並將其移動到單獨的 .py 文件中。 讓我們稱之為commonstuff.py 現在attack導入commonstuffmain.py導入模塊和導入工作。

main.py是腳本, attackcommonstuff是模塊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM