Q
全局變量不能改變
2
A
回答
3
問題是您正在更改模塊級別的變量a
。 我假設你只需從該模塊導入所有內容。
讓文件mymodule.py
包含代碼
a = 42
def foo(num):
global a
a = num
現在讓我們運行一個解釋對話:
>>> from mymodule import *
>>> a
42
>>> foo(12)
>>> a
42
>>> import mymodule
>>> mymodule.a
12
+2
好的趕上!仍然試圖猜測可以做些什麼......無論如何,'從模塊導入*'通常是問題的根源,因爲除了設計得很仔細的模塊之外,它將模塊化分解成幾部分。 –
+0
我正在使用'%run'魔術命令。這似乎與'from ... import *'類似 – binaryfunt
相關問題
- 1. 功能不改變全局變量
- 2. 全局變量不改變
- 3. C++:不能修改全局變量
- 4. 全局變量不會改變
- 5. 函數不會改變全局變量
- 6. 全局變量不會改變
- 7. 全局變量不會改變jQuery的功能
- 8. 全局變量修改TCL
- 9. 更改全局變量
- 10. 修改全局變量Ant
- 11. 全局變量空功能
- 12. 功能的全局變量
- 13. 全局變量類節能
- 14. SlimFramework改變全局變量內航線
- 15. 全局變量值沒有改變
- 16. Python的改變全局變量
- 17. JavaScript - 函數不修改全局變量
- 18. 變量全局變量?
- 19. luabind:不能訪問全局變量
- 20. 全局變量不能分配兩次
- 21. Python不能看到全局變量
- 22. 全局變量不是內部功能
- 23. 全局變量
- 24. 全局變量。
- 25. 全局變量
- 26. 全局變量
- 27. 全局變量
- 28. 全局變量
- 29. 全局變量
- 30. 全局變量
什麼是NUM到底是什麼?而且你不會回報a的價值,你期望什麼? – Inkblot
@Inkblot我加了一些額外的信息 – binaryfunt
能'a'生活在加載了'import'的foo.py文件中嗎?如果是的話,請說明你是如何導入一切的。 –