python第一期之第二周之第一節
今天首先解釋一下編譯型語言與解釋性語言,在進行介紹關於python的一些註意事項。
編譯型語言在程序執行之前,先會通過編譯器對程序執行一個編譯器對程序執行一個編譯的過程,把程序轉變為機器語言。運行時就不需要翻譯,而直接執行就可以了,例如c語言。
解釋型語言就沒有編譯過程而是在程序運行的時候,通過解釋器對程序逐行做出解釋,然後直接運行如python
例如java 首先通過編譯器編譯成字節碼文件,然後在運行時通過解釋器給解釋成機器文件,所以Java是先編譯後解釋的語言。
導入模塊的名稱一般不能與去的名字相同。
再介紹關於兩個模塊sys與os
import sys
print(sys.path) #打印環境變量,一般情況下輸出相對路徑
print(sys.argv)
print(sys.argv[2])#一般早終端進行嘗試,個人再pycharm中報出錯了。
import os
cmd_res = os.system("dir") #執行命令但是不保存結果
print(cmd_res)#輸出剛剛的列表,你會發現有亂碼(我的有亂碼,看個人情況)
print(“-----1”,cmd_res)#進一步觀察,你其實輸出了0
cmd_res = os.popen("dir")#打印內存對象地址 (其實就是一些看不懂的東西但是你可以這樣)
cmd_res = os.popen("dir").read()# 這樣你會發現突然看懂了 就是自己的相對列表
os.mkdir("new_dir")#創建一個目錄 很簡單 不闡述了
上面這些都是調用的庫文件,接下說下怎麽調用自己寫的模塊
調用自己寫的模塊的時候,先到當前目錄中查找,然後再到環境變量中查找,若沒有,則直接報錯
解決思路:
1、加到 python_path/base/Lib/site_packages下
2、加一個路徑,配置到環境變量中(具體怎麽做,有興趣的繼續關註在後面會出現)
下面是什麽是pyc 編譯器的結果是什麽? 和編程沒有直接關系
pycodeobject則是python編譯器真正·編譯成的結果。
當python程序運行時,編譯的結果則是保存在位於內存的pycodeobject中,當python程序運行結束時,python編譯器則將pycodeobject寫回到pyc文件中,
當python程序第二次運行時,首先程序會在硬盤中尋找pyc文件,如果找到,則直接載入,負責就重復上面過程。
pyc就是預編譯的一個文件
最後,關於怎麽判斷pyc就是現在可以用之前的.py文件沒有進行更改,這個通過比較.py文件與pyc文件的保存時間來判斷。
python第一期之第二周之第一節