python.sys.modules模塊

sys.modules是一個全局字典,該字典是python啟動后就加載在內存中。每當程序員導入新的模塊,sys.modules都將記錄這些模塊。字典sys.modules對于加載模塊起到了緩沖的作用涕烧。當某個模塊第一次導入,字典sys.modules將自動記錄該模塊汗洒。當第二次再導入該模塊時议纯,python會直接到字典中查找,從而加快了程序運行的速度溢谤。

字典sys.modules具有字典所擁有的一切方法瞻凤,可以通過這些方法了解當前的環(huán)境加載了哪些模塊

import sys
print(sys.modules[__name__])
print(sys.modules.values())
print(sys.modules.keys())
print(sys.modules.items())

執(zhí)行結果

>>> import sys
>>> print(sys.modules[__name__])
<module '__main__' (built-in)>
>>> print(sys.modules.values())
dict_values([<module 'builtins' (built-in)>, <module 'sys' (built-in)>, <module 'importlib._bootstrap' (frozen)>, <module '_imp' (built-in)>, <module '_warnings' (built-in)>, <module '_thread' (built-in)>, <module '_weakref' (built-in)>, <module 'importlib._bootstrap_external' (frozen)>, <module 'io' (built-in)>, <module 'marshal' (built-in)>, <module 'posix' (built-in)>, <module 'zipimport' (built-in)>, <module 'encodings' from '/home/nick/anaconda3/lib/python3.6/encodings/__init__.py'>, <module 'codecs' from '/home/nick/anaconda3/lib/python3.6/codecs.py'>, <module '_codecs' (built-in)>, <module 'encodings.aliases' from '/home/nick/anaconda3/lib/python3.6/encodings/aliases.py'>, <module 'encodings.utf_8' from '/home/nick/anaconda3/lib/python3.6/encodings/utf_8.py'>, <module '_signal' (built-in)>, <module '__main__' (built-in)>, <module 'encodings.latin_1' from '/home/nick/anaconda3/lib/python3.6/encodings/latin_1.py'>, <module 'io' from '/home/nick/anaconda3/lib/python3.6/io.py'>, <module 'abc' from '/home/nick/anaconda3/lib/python3.6/abc.py'>, <module '_weakrefset' from '/home/nick/anaconda3/lib/python3.6/_weakrefset.py'>, <module 'site' from '/home/nick/anaconda3/lib/python3.6/site.py'>, <module 'os' from '/home/nick/anaconda3/lib/python3.6/os.py'>, <module 'errno' (built-in)>, <module 'stat' from '/home/nick/anaconda3/lib/python3.6/stat.py'>, <module '_stat' (built-in)>, <module 'posixpath' from '/home/nick/anaconda3/lib/python3.6/posixpath.py'>, <module 'genericpath' from '/home/nick/anaconda3/lib/python3.6/genericpath.py'>, <module 'posixpath' from '/home/nick/anaconda3/lib/python3.6/posixpath.py'>, <module '_collections_abc' from '/home/nick/anaconda3/lib/python3.6/_collections_abc.py'>, <module '_sitebuiltins' from '/home/nick/anaconda3/lib/python3.6/_sitebuiltins.py'>, <module 'sysconfig' from '/home/nick/anaconda3/lib/python3.6/sysconfig.py'>, <module '_sysconfigdata_m_linux_x86_64-linux-gnu' from '/home/nick/anaconda3/lib/python3.6/_sysconfigdata_m_linux_x86_64-linux-gnu.py'>, <module '_bootlocale' from '/home/nick/anaconda3/lib/python3.6/_bootlocale.py'>, <module '_locale' (built-in)>, <module 'types' from '/home/nick/anaconda3/lib/python3.6/types.py'>, <module 'functools' from '/home/nick/anaconda3/lib/python3.6/functools.py'>, <module '_functools' (built-in)>, <module 'collections' from '/home/nick/anaconda3/lib/python3.6/collections/__init__.py'>, <module 'operator' from '/home/nick/anaconda3/lib/python3.6/operator.py'>, <module '_operator' (built-in)>, <module 'keyword' from '/home/nick/anaconda3/lib/python3.6/keyword.py'>, <module 'heapq' from '/home/nick/anaconda3/lib/python3.6/heapq.py'>, <module '_heapq' from '/home/nick/anaconda3/lib/python3.6/lib-dynload/_heapq.cpython-36m-x86_64-linux-gnu.so'>, <module 'itertools' (built-in)>, <module 'reprlib' from '/home/nick/anaconda3/lib/python3.6/reprlib.py'>, <module '_collections' (built-in)>, <module 'weakref' from '/home/nick/anaconda3/lib/python3.6/weakref.py'>, <module 'collections.abc' from '/home/nick/anaconda3/lib/python3.6/collections/abc.py'>, <module 'importlib' from '/home/nick/anaconda3/lib/python3.6/importlib/__init__.py'>, <module 'importlib._bootstrap' (frozen)>, <module 'importlib._bootstrap_external' (frozen)>, <module 'warnings' from '/home/nick/anaconda3/lib/python3.6/warnings.py'>, <module 'importlib.util' from '/home/nick/anaconda3/lib/python3.6/importlib/util.py'>, <module 'importlib.abc' from '/home/nick/anaconda3/lib/python3.6/importlib/abc.py'>, <module 'importlib.machinery' from '/home/nick/anaconda3/lib/python3.6/importlib/machinery.py'>, <module 'contextlib' from '/home/nick/anaconda3/lib/python3.6/contextlib.py'>, <module 'mpl_toolkits' (namespace)>, <module 'sphinxcontrib' from '/home/nick/anaconda3/lib/python3.6/site-packages/sphinxcontrib/__init__.py'>, <module 'readline' from '/home/nick/anaconda3/lib/python3.6/lib-dynload/readline.cpython-36m-x86_64-linux-gnu.so'>, <module 'atexit' (built-in)>, <module 'rlcompleter' from '/home/nick/anaconda3/lib/python3.6/rlcompleter.py'>])
>>> print(sys.modules.keys())
dict_keys(['builtins', 'sys', '_frozen_importlib', '_imp', '_warnings', '_thread', '_weakref', '_frozen_importlib_external', '_io', 'marshal', 'posix', 'zipimport', 'encodings', 'codecs', '_codecs', 'encodings.aliases', 'encodings.utf_8', '_signal', '__main__', 'encodings.latin_1', 'io', 'abc', '_weakrefset', 'site', 'os', 'errno', 'stat', '_stat', 'posixpath', 'genericpath', 'os.path', '_collections_abc', '_sitebuiltins', 'sysconfig', '_sysconfigdata_m_linux_x86_64-linux-gnu', '_bootlocale', '_locale', 'types', 'functools', '_functools', 'collections', 'operator', '_operator', 'keyword', 'heapq', '_heapq', 'itertools', 'reprlib', '_collections', 'weakref', 'collections.abc', 'importlib', 'importlib._bootstrap', 'importlib._bootstrap_external', 'warnings', 'importlib.util', 'importlib.abc', 'importlib.machinery', 'contextlib', 'mpl_toolkits', 'sphinxcontrib', 'readline', 'atexit', 'rlcompleter'])
>>> print(sys.modules.items())
dict_items([('builtins', <module 'builtins' (built-in)>), ('sys', <module 'sys' (built-in)>), ('_frozen_importlib', <module 'importlib._bootstrap' (frozen)>), ('_imp', <module '_imp' (built-in)>), ('_warnings', <module '_warnings' (built-in)>), ('_thread', <module '_thread' (built-in)>), ('_weakref', <module '_weakref' (built-in)>), ('_frozen_importlib_external', <module 'importlib._bootstrap_external' (frozen)>), ('_io', <module 'io' (built-in)>), ('marshal', <module 'marshal' (built-in)>), ('posix', <module 'posix' (built-in)>), ('zipimport', <module 'zipimport' (built-in)>), ('encodings', <module 'encodings' from '/home/nick/anaconda3/lib/python3.6/encodings/__init__.py'>), ('codecs', <module 'codecs' from '/home/nick/anaconda3/lib/python3.6/codecs.py'>), ('_codecs', <module '_codecs' (built-in)>), ('encodings.aliases', <module 'encodings.aliases' from '/home/nick/anaconda3/lib/python3.6/encodings/aliases.py'>), ('encodings.utf_8', <module 'encodings.utf_8' from '/home/nick/anaconda3/lib/python3.6/encodings/utf_8.py'>), ('_signal', <module '_signal' (built-in)>), ('__main__', <module '__main__' (built-in)>), ('encodings.latin_1', <module 'encodings.latin_1' from '/home/nick/anaconda3/lib/python3.6/encodings/latin_1.py'>), ('io', <module 'io' from '/home/nick/anaconda3/lib/python3.6/io.py'>), ('abc', <module 'abc' from '/home/nick/anaconda3/lib/python3.6/abc.py'>), ('_weakrefset', <module '_weakrefset' from '/home/nick/anaconda3/lib/python3.6/_weakrefset.py'>), ('site', <module 'site' from '/home/nick/anaconda3/lib/python3.6/site.py'>), ('os', <module 'os' from '/home/nick/anaconda3/lib/python3.6/os.py'>), ('errno', <module 'errno' (built-in)>), ('stat', <module 'stat' from '/home/nick/anaconda3/lib/python3.6/stat.py'>), ('_stat', <module '_stat' (built-in)>), ('posixpath', <module 'posixpath' from '/home/nick/anaconda3/lib/python3.6/posixpath.py'>), ('genericpath', <module 'genericpath' from '/home/nick/anaconda3/lib/python3.6/genericpath.py'>), ('os.path', <module 'posixpath' from '/home/nick/anaconda3/lib/python3.6/posixpath.py'>), ('_collections_abc', <module '_collections_abc' from '/home/nick/anaconda3/lib/python3.6/_collections_abc.py'>), ('_sitebuiltins', <module '_sitebuiltins' from '/home/nick/anaconda3/lib/python3.6/_sitebuiltins.py'>), ('sysconfig', <module 'sysconfig' from '/home/nick/anaconda3/lib/python3.6/sysconfig.py'>), ('_sysconfigdata_m_linux_x86_64-linux-gnu', <module '_sysconfigdata_m_linux_x86_64-linux-gnu' from '/home/nick/anaconda3/lib/python3.6/_sysconfigdata_m_linux_x86_64-linux-gnu.py'>), ('_bootlocale', <module '_bootlocale' from '/home/nick/anaconda3/lib/python3.6/_bootlocale.py'>), ('_locale', <module '_locale' (built-in)>), ('types', <module 'types' from '/home/nick/anaconda3/lib/python3.6/types.py'>), ('functools', <module 'functools' from '/home/nick/anaconda3/lib/python3.6/functools.py'>), ('_functools', <module '_functools' (built-in)>), ('collections', <module 'collections' from '/home/nick/anaconda3/lib/python3.6/collections/__init__.py'>), ('operator', <module 'operator' from '/home/nick/anaconda3/lib/python3.6/operator.py'>), ('_operator', <module '_operator' (built-in)>), ('keyword', <module 'keyword' from '/home/nick/anaconda3/lib/python3.6/keyword.py'>), ('heapq', <module 'heapq' from '/home/nick/anaconda3/lib/python3.6/heapq.py'>), ('_heapq', <module '_heapq' from '/home/nick/anaconda3/lib/python3.6/lib-dynload/_heapq.cpython-36m-x86_64-linux-gnu.so'>), ('itertools', <module 'itertools' (built-in)>), ('reprlib', <module 'reprlib' from '/home/nick/anaconda3/lib/python3.6/reprlib.py'>), ('_collections', <module '_collections' (built-in)>), ('weakref', <module 'weakref' from '/home/nick/anaconda3/lib/python3.6/weakref.py'>), ('collections.abc', <module 'collections.abc' from '/home/nick/anaconda3/lib/python3.6/collections/abc.py'>), ('importlib', <module 'importlib' from '/home/nick/anaconda3/lib/python3.6/importlib/__init__.py'>), ('importlib._bootstrap', <module 'importlib._bootstrap' (frozen)>), ('importlib._bootstrap_external', <module 'importlib._bootstrap_external' (frozen)>), ('warnings', <module 'warnings' from '/home/nick/anaconda3/lib/python3.6/warnings.py'>), ('importlib.util', <module 'importlib.util' from '/home/nick/anaconda3/lib/python3.6/importlib/util.py'>), ('importlib.abc', <module 'importlib.abc' from '/home/nick/anaconda3/lib/python3.6/importlib/abc.py'>), ('importlib.machinery', <module 'importlib.machinery' from '/home/nick/anaconda3/lib/python3.6/importlib/machinery.py'>), ('contextlib', <module 'contextlib' from '/home/nick/anaconda3/lib/python3.6/contextlib.py'>), ('mpl_toolkits', <module 'mpl_toolkits' (namespace)>), ('sphinxcontrib', <module 'sphinxcontrib' from '/home/nick/anaconda3/lib/python3.6/site-packages/sphinxcontrib/__init__.py'>), ('readline', <module 'readline' from '/home/nick/anaconda3/lib/python3.6/lib-dynload/readline.cpython-36m-x86_64-linux-gnu.so'>), ('atexit', <module 'atexit' (built-in)>), ('rlcompleter', <module 'rlcompleter' from '/home/nick/anaconda3/lib/python3.6/rlcompleter.py'>)])
>>>
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市世杀,隨后出現的幾起案子阀参,更是在濱河造成了極大的恐慌,老刑警劉巖瞻坝,帶你破解...
    沈念sama閱讀 216,402評論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蛛壳,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機衙荐,發(fā)現死者居然都...
    沈念sama閱讀 92,377評論 3 392
  • 文/潘曉璐 我一進店門捞挥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人忧吟,你說我怎么就攤上這事砌函。” “怎么了溜族?”我有些...
    開封第一講書人閱讀 162,483評論 0 353
  • 文/不壞的土叔 我叫張陵讹俊,是天一觀的道長。 經常有香客問我斩祭,道長劣像,這世上最難降的妖魔是什么乡话? 我笑而不...
    開封第一講書人閱讀 58,165評論 1 292
  • 正文 為了忘掉前任摧玫,我火速辦了婚禮,結果婚禮上绑青,老公的妹妹穿的比我還像新娘诬像。我一直安慰自己,他們只是感情好闸婴,可當我...
    茶點故事閱讀 67,176評論 6 388
  • 文/花漫 我一把揭開白布坏挠。 她就那樣靜靜地躺著,像睡著了一般邪乍。 火紅的嫁衣襯著肌膚如雪降狠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,146評論 1 297
  • 那天庇楞,我揣著相機與錄音榜配,去河邊找鬼。 笑死吕晌,一個胖子當著我的面吹牛蛋褥,可吹牛的內容都是我干的。 我是一名探鬼主播睛驳,決...
    沈念sama閱讀 40,032評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼烙心,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了乏沸?” 一聲冷哼從身側響起淫茵,我...
    開封第一講書人閱讀 38,896評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蹬跃,沒想到半個月后痘昌,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,311評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,536評論 2 332
  • 正文 我和宋清朗相戀三年辆苔,在試婚紗的時候發(fā)現自己被綠了算灸。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,696評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡驻啤,死狀恐怖菲驴,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情骑冗,我是刑警寧澤赊瞬,帶...
    沈念sama閱讀 35,413評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站贼涩,受9級特大地震影響巧涧,放射性物質發(fā)生泄漏。R本人自食惡果不足惜遥倦,卻給世界環(huán)境...
    茶點故事閱讀 41,008評論 3 325
  • 文/蒙蒙 一谤绳、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧袒哥,春花似錦缩筛、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至却紧,卻和暖如春桐臊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背晓殊。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評論 1 269
  • 我被黑心中介騙來泰國打工断凶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人挺物。 一個月前我還...
    沈念sama閱讀 47,698評論 2 368
  • 正文 我出身青樓懒浮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親识藤。 傳聞我的和親對象是個殘疾皇子砚著,可洞房花燭夜當晚...
    茶點故事閱讀 44,592評論 2 353

推薦閱讀更多精彩內容