1.模塊初識
(1)sys模塊
sys模塊是系統自帶的模塊,包括了一組非常實用的服務,內含很多函數方法和變量,用來處理Python運行時配置以及資源,從而可以與前當程序之外的系統環境交互,這裏只介紹兩個常用的函數 sys.path和 sys.argv。
sys.path是獲取指定模塊搜索路徑的字符串集合,可以將寫好的模塊放在得到的某個路徑下,就可以在程序中import時正確找到。
例如在我的電腦上運行以下代碼:
import sys
print(sys.path)
得到的結果如下:
['D:\\Users\\YHfeng\\python\\S14\\Day2',
'D:\\Users\\YHfeng\\python\\S14',
'D:\\Program Files\\Anaconda3\\python35.zip',
'D:\\Program Files\\Anaconda3\\DLLs',
'D:\\Program Files\\Anaconda3\\lib']
這就是在我的電腦上存放模塊的路徑。
sys.argv是實現從程序外部向程序傳遞參數。
例如在我的電腦上運行以下代碼:
import sys
print(sys.argv[0])
得到的結果如下:
datatype.py
就是該運行程序。
(2)OS模塊
os模塊負責程序與操作系統的交互,提供了訪問操作系統底層的接口。這裏只介紹os.system函數。
os.system()是運行shell命令,例如執行shell的dir命令
import os
os.system(dir")
得到的結果如下:
驅動器 D 中的卷是 LENOVO
卷的序列號是 6A2D-F509
D:\Users\YHfeng\python\S14\Day2 的目錄
2020/01/29 11:29 <DIR> .
2020/01/29 11:29 <DIR> ..
2020/01/29 11:29 351 datatype.py
2020/01/28 15:08 77 __init__.py
2 個文件 428 字節
2 個目錄 174,975,459,328 可用字節
得到該文件下的子目錄。
2.Python的數據類型
(1)數字
數字的數據類型分爲int、float和complex三種,int是整數,float浮點數一般就表示小數,但兩者不對等,complex是複數,在有些專業領域用得比較多,比如系統分析的拉普拉斯變換、物理學的電動力學都要用到。
整數在python3中已經不區分int和long了,都是int型
(2)布爾值
就是True和False,在機器裏是1和0,但在判斷中,非0都是True,比如
if 2:
print(“hello world!”)
運行結果爲:
hello world!
(3)字符串
字符串的功能較多,這裏不再贅述,可參考Python字符串。
3.Python的列表
列表類似於C語言中的數組,例如
#定義一個names列表,裏面有8個值,下標從0開始
names = ["zhao", "qian" ,"sun", "li","zhou" ,"wu", "zheng", "wang"]
打印整個列表
print(names)
打印從下標爲2的值到最後
print(names[2:])
打印從下標爲1的值到下標爲4的值,顧前不顧後,下標爲4的值不打印
print(names[1:4])
['zhao', 'qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang']
['sun', 'li', 'zhou', 'wu', 'zheng', 'wang']
['qian', 'sun', 'li']
列表的下標可以從前往後數從0開始,也可以從後往前數從-1開始。從從後往前數的切片時,不能寫成names[-3:-1],要寫成names[-1:-3],也是從前往後數。
(1)name.append()是列表在末尾增加值的函數,一次只能增加一個。
(2)name.insert(插入的下標,插入的值)是列表插入值的函數,例如:
names = ["zhao", "qian" ,"sun", "li","zhou" ,"wu", "zheng", "wang"]
names.append("yu")
names.insert(4,"liu")
print(names)
['zhao', 'qian', 'sun', 'li', 'liu', 'zhou', 'wu', 'zheng', 'wang', 'yu']
(3)列表元素的刪除,有三種方式
names.remove(),移除列表中的某個值,括號內爲“值”
del names[下標]
names.pop(下標),如果不填默認值爲最後一個,舉例
names = ["zhao","qian","sun","li","zhou","wu","zheng","wang"]
names.remove("zheng")
del names[1]
names.pop()
print(names)
運行後的結果爲
['zhao', 'sun', 'li', 'zhou', 'wu']
把zheng ,第二個值和最後一個值刪除了。
(4)通過值輸出下標使用names.index(“值”)函數
(5)可以通過names.count()來統計元素值出現的次數
(6)names.copy是複製列表
names = ["zhao","qian","sun","li","zhou","wu","zheng","wang"]
names2 = names.copy()
print(names)
print(names2)
運行結果爲:
['zhao', 'qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang']
['zhao', 'qian', 'sun', 'li', 'zhou', 'wu', 'zheng', 'wang']
賦值=在列表間是賦值列表的存儲地址,所以任何一個改了,列表都會修改。
4.Python的元組
元組也是存一組數,但是只可以讀,不能做其他操作,它的方法只有兩個,index()和count(),作用和上文列表的相應函數作用一致。