vars()檢視內建全域性變數
以字典方式返回內建全域性變數
#!/usr/bin/env python
#-*- coding:utf8 -*-
(vars())#輸出
#
#!/usr/bin/env python
#-*- coding:utf8 -*-
"""這裡是檔案的注釋
"""print(__doc__) #
__doc__ :獲取檔案的注釋#輸出
#這裡是檔案的注釋
__file__ 【重點】獲取當前檔案的路徑
#!/usr/bin/env python
#-*- coding:utf8 -*-
print(__file__) #
__file__ :獲取當前檔案的路徑#輸出
#h:/py/index.py
會經常用到__file__ ,一般配合os模組的os.path.dirname(),os.path.basename() ,os.path.join() 模組函式來使用
#!/usr/bin/env python
#-*- coding:utf8 -*-
import
osa = __file__
#__file__全域性變數獲取當前檔案路徑
(a)b = os.path.dirname(a) #
獲取檔案當前目錄:注意:os.path.dirname()疊加一次向上找一次 如下
(b)b2 = os.path.dirname(b) #
獲取檔案當前目錄的上級目錄,注意:os.path.dirname()疊加一次向上找一次
(b2)
c = os.path.basename(a) #
獲取檔名稱
(c)#輸出#
h:/py/lib/ska/mk.py
#h:/py/lib/ska
#h:/py/lib
#mk.py
用__file__獲取模組路徑,新增到直譯器模組路徑裡
#!/usr/bin/env python
#-*- coding:utf8 -*-
import
sysimport
osa = __file__
#__file__全域性變數獲取當前檔案路徑
(a)b = os.path.dirname(a) #
獲取檔案當前目錄
(b)c = "
lib"
#自定義檔案目錄名稱
d = os.path.join(b,c) #
將獲取檔案當前目錄,與自定義檔案目錄名稱,拼接成完整的路徑
(d)print("\n"
)#將拼接好的路徑,新增到直譯器模組路徑中
for i in sys.path: #
(i)#輸出#
h:/py/index.py
#h:/py
#h:/py\lib##
#h:\py##
h:\py##
####
h:/py\lib
__package__ :獲取匯入檔案的路徑,多層目錄以點分割,注意:對當前檔案返回none
#!/usr/bin/env python
#-*- coding:utf8 -*-
print(__package__) #
注意:對當前檔案返回none
from lib.ska import mk #
匯入mk模組檔案
print(mk.__package__) #
__package__ :獲取匯入檔案的路徑,多層目錄以點分割,注意:對當前檔案返回none#輸出
#none
#lib.ska
#lib.ska
__cached__ :獲取匯入檔案的快取路徑
#!/usr/bin/env python
#-*- coding:utf8 -*-
from lib.ska import mk #
匯入mk模組檔案
print(mk.__cached__) #
__cached__ :獲取匯入檔案的快取路徑#輸出
#h:\py\lib\ska\__pycache__\mk.cpython-35.pyc
__name__【重點】獲取匯入檔案的路徑加檔名稱,路徑以點分割,注意:獲取當前檔案返回__main__
#!/usr/bin/env python
#-*- coding:utf8 -*-
print(__name__) #
注意:獲取當前檔案返回__main__
from lib.ska import mk #
匯入mk模組檔案
print(mk.__name__) #
獲取匯入檔案的路徑加檔名稱,路徑以點分割#輸出
#__main__
#lib.ska.mk
__name__ 全域性變數寫在入口檔案裡,只有執行入口檔案時的返回值才是__main__ ,如果入口檔案被匯入到別的檔案裡,此時入口檔案的__name__返回值就不在是__main__,而是如果檔案的路徑加入口檔名稱,所以我們可以用__name__全域性變數來防止別人盜鏈入口檔案
#!/usr/bin/env python
#-*- coding:utf8 -*-
if__name__ == "
__main__
": #
__name__ 全域性變數寫在入口檔案裡,只有執行入口檔案時的返回值才是__main__ ,如果入口檔案被匯入到別的檔案裡,此時入口檔案的__name__返回值就不在是__main__,而是如果檔案的路徑加入口檔名稱,所以我們可以用__name__全域性變數來防止別人盜鏈入口檔案
print("執行"
)#這樣只有執行index檔案時才執行判斷裡的,index被匯入到到別的檔案,就不會執行判斷裡的
__builtins__ 【重點】內建函式在這裡面
第三十九級台階
第39級台階 小明剛剛看完電影 第39級台階 離開電影院的時候,他數了數禮堂前的台階數,恰好是39級 站在台階前,他突然又想著乙個問題 如果我每一步只能邁上1個或2個台階。先邁左腳,然後左右交替,最後一步是邁右腳,也就是說一共要走偶數步。那麼,上完39級台階,有多少種不同的上法呢?請你利用計算機的優...
第三十九象 壬寅
讖 曰鳥無足 山有月 旭初公升 人都哭 頌 曰十二月中氣不和 南山有雀北山羅 一朝聽得金雞叫 大海沈沈日已過 金聖嘆註解 此象疑一外夷擾亂中原,必至酉年始得平也。推背圖網解 此象主要講倆件事,一是日寇占領東三省 二是西安事變,是本象的重點。兩句讖辭講的是日寇占領東三省的情形。頌辭講西安事變和抗戰勝利...
學習python 第三十九天
python 好的 防止python指令碼中被重複執行 ifname main if x 判斷真 if not x 判斷假 if x in items 包含 for x in items 迭代 不使用臨時變數交換兩個值 a,b b,a 用序列構建字串。sr a a c c b b ss join s...