python標準庫、第三方庫(需要手動安裝)
sys模組、os模組——標準庫
print
(sys.path)
#列印環境變數
print
(sys.ar**)
#相對路徑
sys.ar** 獲取相對路徑+指令碼傳參
os模組——作業系統
os.system(
"dir"
)#查詢目錄,不儲存結果,直接輸出
cmd_res=os.popen(
"dir"
).read(
)#存到記憶體乙個臨時地方 再從記憶體讀取
os.mkdir(
"new_dir"
)#建立乙個目錄
自己寫模組
預設模組在當前目錄下查詢——再到全域性變數中查詢
1、可放在site-package
2、環境變數再加乙個路徑
python是一門基於虛擬機器的語言
pycache .pyc檔案
pycodeobject是python編譯器真正編譯成的結果
1、當python程式執行時,編譯的結果則是儲存在位於記憶體中的pycodeobject中
2、當python程式執行結束時,python直譯器則將pycodeobject寫回到pyc檔案中
3、當python程式第二次執行時,首先程式會在硬碟中尋找pyc檔案,如果找到,直接載入,否則就重複上面的過程,若有修改(判斷檔案更新時間),時間不同重複上面過程
pyc檔案時pycodeobject的一種持久化儲存方式
字串格式化輸出
name=
"li"
print
("i am %s"
%name)
type
(a)#檢視變數a的資料型別
三元運算
a,b,c=1,
3,5d=a if a>b else c #輸出d=5
bytes型別(位元組,二進位制型別)與字串不一樣
python3最重要的新特性:對文字和二進位制資料作了更為清晰的區分
文字預設unicode,由str型別表示,二進位制資料則由bytes型別表示
string—encode—bytes
bytes—decode—string
切片:取多個元素(區間:左閉右開)
names=
["li"
,"zhao"
,"wan","haha"
,"hehe"
]names[1:
1]names[:3
]names[0:
:2]names[::
2]names[-2
:]names[3:
]
追加:放在列表最後
names[
"wang"
]
插入:插入後所在位置的下標
names.insert(1,
"zhou"
)
修改:把1下標內容修改
names[1]
="huanxing"
刪除:
names.remove(
"li")#1
del names[1]
#2names.pop(
)#3 刪除列表最後乙個值
獲取列表元素下標
names.index(
"li"
)
統計列表元素個數
names.count(
"li"
)
names.clear(
)#清空列表
排序&反轉(python3不同資料型別不能放在一起排序)
names.sort(
)#ascii碼排序
names,reverse()擴充套件
```python
names=
["li"
,"ha"
,"he"]b=
[1,2
,3]names.extend(b)
#names=["li","ha","he",1,2,3]
複製
name2=names.copy() 淺複製
names內元素修改,name2不變
names內列表元素修改,name2改變
對比字串&數字
a=
1b=aa=2
#a=2 b=1
a=[1
,2,3
]b=aa[1
]=5#a=[1,5,3]、b=[1,5,3]
淺複製三種
person[
'name',[
'a',
1000]]
p1=copy.copy(person)
p2=person[:]
p3=list
(person)
Python學習之路(2)
從list或tuple中取部分元素。list 1,2,3,4 list 0 3 1,2,3 list 2 1 1表示最後乙個,3,4 list 1 2 index 1開始,每兩個取乙個 2,4 list 複製list,1,2,3,4 針對tuple,切片同樣適用可迭代,迭代器,集合型別資料可迭代但不...
Python學習之路2
列表合併 列表合併有extend方法和直接 合併,兩者雖然都能合併列表,且結果相同,但是前者合併列表,不會導致最終合併的列表物件記憶體位址號發生變化,後者會導致記憶體位址好的改變,這也就意味著合併後的列表被重新定義 列表排序 按ascall碼排序 列表排序使用sort方法,格式為l.sort key...
python入門學習之路(2)
一.列表的定義以及表達方式 列表是由一系列沒有任何關係的按照某種特定順序排列的元素組成。舉個例子 names jm bob tom print names 二.列表操作 1.訪問列表 列表和陣列很像都是有序組合,如果要訪問列表中的元素,只需要把該元素的位置或索引告訴解析器就可以了,例如 names ...