回答
Within a module , the module’s name (as a string) is available as the value of the global variable
__name__
.
>>> import itertools as it
>>> it.__name__
'itertools'
但是email = Module(__name__)
將引發NameError
:(名稱 '模塊' 沒有定義)。如果您定義名稱Module
,例如使用itertools(__name__)
,因爲它不可調用,則會產生TypeError
。
所以__name__
是一個模塊屬性,你不能單獨傳遞它。
此外,您可以在dir()
函數結果中找到__name__
,該結果用於找出模塊定義的名稱。
>>> dir(itertools)
['__doc__', '__name__', '__package__', 'chain', 'combinations', 'combinations_with_replacement', 'compress', 'count', 'cycle', 'dropwhile', 'groupby', 'ifilter', 'ifilterfalse', 'imap', 'islice', 'izip', 'izip_longest', 'permutations', 'product', 'repeat', 'starmap', 'takewhile', 'tee']
但是Module()是做什麼的,給Module賦給當前模塊的__name__意味着什麼?這行代碼是否創建別名或什麼? – cerhovice
@cerhovice名稱'Module'在python中沒有任何意義,因爲我說如果你的模塊不可調用'Module(__ name __)'將引發一個NameError:名稱'Module'沒有被定義。 – Kasramvd
從理論上來說,OP可以從類型import ModuleType中指定爲Module或者其他屬性。令人驚訝的是,['ModuleType()'可以手動實例化](https://docs.python.org/3.4/library/types.html#types.ModuleType)。 – Kevin
- 1. 匕首2:@Module(包括=)做什麼?
- 2. 是什麼?MODULE
- 3. 什麼是「module」package.json字段?
- 4. 在macruby中,Module的方法「__type__」是做什麼的?
- 5. 什麼是python的__file__,__name__和Object .__類__.__ name__的java等價物?
- 6. 「module self :: X」和「module X」有什麼區別?
- 7. JavaScript中的Module Loader和Module Bundler有什麼區別?
- 8. 做minHeight做什麼?
- 9. 什麼是cmake中的MODULE庫類型?
- 10. cmake'pkg_check_modules'中的'module'代表什麼?
- 11. WPF能做什麼和不做什麼?
- 12. 在Perl中做什麼=〜做什麼?
- 13. 什麼「?」做?什麼是__FILE__?
- 14. 什麼是setDetailItem:做什麼?
- 15. 爲什麼賦值給sys.modules [__ name__]後__name__的值發生了變化?
- 16. Python:雙括號做什麼?
- 17. SIFT做什麼?
- 18. 什麼[System.SerializableAttribute()做
- 19. WT_EXECUTEINUITHREAD做什麼?
- 20. requirejs.config()做什麼?
- 21. BasicLSTMCell做什麼?
- 22. System.Concurrency.AsyncLock做什麼?
- 23. || =做什麼?
- 24. Notification.DEFAULT_VIBRATE做什麼?
- 25. android:layout_column做什麼?
- 26. Hibernate.initialize做什麼?
- 27. @SingleValueResult做什麼?
- 28. ``.`做什麼?
- 29. 塊做什麼?
- 30. CCriticalSection做什麼?
這將取決於什麼模塊被定義爲... – kindall
So模塊在Python中沒有一般含義? – cerhovice
不,沒有內置命名的「模塊」。它看起來是一個基於它被大寫的事實的類,但這只是一個猜測。 – kindall