python(課堂筆記2)
阿新 • • 發佈:2019-02-27
find side 存在 else reverse 輸出 nbsp with 運算
2019/02/26 21:47 21 str1.py
2019/02/26 22:16 263 模塊初始.py
2019/02/26 16:57 644 淺拷貝.py
2019/02/22 21:11 551 爬蟲.py
7 個文件 4,095 字節
3 個目錄 8,209,002,496 可用字節
- 模塊初識
- 數據類型
- 三元運算
- bytes類型
- 淺拷貝和深拷貝和賦值的區別
模塊也可以叫庫。分為標準庫和第三方庫。區別在於標準庫不需要安裝,可以直接導入的內置模塊。
第三方庫則是需要安裝的庫。
import sys sys.argv #打印環境變量(相對路徑) import os os.system(‘dir‘) #執行命令,不執行結果 a = os.popen(‘dir‘).read() #用read()方法調取它的結果,結果存在內存中。 print(a)
os.mkdir(‘new dir‘) #創建目錄
驅動器 C 中的卷沒有標簽。
卷的序列號是 A649-EE2A
C:\Users\Administrator\PycharmProjects\day01\day02 的目錄
2019/02/26 22:16 <DIR> .
2019/02/26 22:16 <DIR> ..
2019/02/25 19:39 165 encode to decode.py
2019/02/26 11:11 <DIR> fp
2019/02/26 16:58 1,122 list.py
2019/02/26 20:26 1,329 shopping.py
2019/02/26 22:16 263 模塊初始.py
2019/02/26 16:57 644 淺拷貝.py
2019/02/22 21:11 551 爬蟲.py
7 個文件 4,095 字節
3 個目錄 8,209,002,496 可用字節
- 動態數據類型
Number
int(整型),註:在python2.x中有份整型和長整型long。
float 浮點數,帶有小數點的浮點數。
布爾型
0和1 True or False
字符串
由有單引號或雙引號括起來的。
s = ‘sleiman is very handsome‘ s1 = ‘sleiman\n‘ print(s.capitalize()) #首字母大寫 Sleiman is very handsome print(s.title()) #首席母大寫 Sleiman Is Very Handsome print(s.count(‘e‘)) #出現的次數 3 print(s.center(50,‘-‘)) #-------------sleiman is very handsome------------- print((‘sleiman‘).endswith(‘an‘))#以an結尾的 print(s1.startswith(‘sl‘)) #以sl開頭 print((‘格式化輸出:%s‘% s).format()) print(s.find(‘s‘))#索引值 print(s.isdigit()) #是否為整數 print((‘t1‘).isalnum()) #是否為字母或數字 print(s.isalpha()) #是否為字母 print(s.isdecimal())#是否為數字 print(s.isidentifier())#判斷是否為合法是標識符 print(s.islower())#是否為小寫 print(s.isupper())# 是否為大寫 print(s.lower())#小寫 print(s.upper())#大寫 s2 = ‘ str ‘ print(s2.strip()) #去掉兩邊的空格\t\n空格 # 字符串拼接 print(‘+‘.join([‘1‘,‘2‘,‘3‘])) print(s2.replace(‘r‘,‘l‘,1)) #參數一:被替換的參數 參數二:替換的參數,三:替換的次數 print(s.split(‘ ‘)) #按空格分割,逗號 s3 = ‘\nstr‘ print(s3.splitlines()) #按行分割
- 列表
# 列表的增刪改查 names = [‘tom‘, ‘candy‘, ‘jerry‘ ,‘hurry‘, ‘alan‘] # 切片 # print(names[:2]) # print(names[-3:]) print(names[: :2]) #[‘tom‘, ‘jerry‘, ‘alan‘] # 增 names.append(1) print(names) #指定插入 names.insert(1,‘1‘) #[‘tom‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] names.insert(3,‘3‘) #[‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] print(names) #增加 names.extend([1,2,3]) #合並 [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1, 2, 3] #刪 # names.remove(‘1‘) [‘tom‘,‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] # del names[3] [‘tom‘, ‘1‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1] names.pop() #默認從最後一個開始刪除,指定下標誌刪除 # [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘] # names.clear() #清空列表 [] print(names) # 改 names[0] = ‘gary‘ #[‘gary‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘] print(names) #查 print(names.index(‘1‘)) #1 print(names.count(1)) #2次 # names.reverse() print(names) #反轉 list1 = [1,2,3,4,5,6] list1.sort(reverse=True) #降序 默認升序 print(list1)
- 元組
元組由小括號括起來的。一旦初始化,就不能更改。
註;後面的數據類型下次會更新上來。
#切片 names = (‘alan‘,‘jack‘) print(names[:1]) #查詢 print((1,2,3,4,1,1).count(1)) #3
註:後面的數據類型下次更新上來。
- 三元運算
# result = 值1 if 條件 else 值2 # 條件為真則result為值1 # 條件為假則result為值2 a = 1 b = 2 result1 = a if a>b else b #2 print(result1)
- 淺拷貝、深拷貝、賦值區別
賦值拷貝:list1與list2分別指向 list1的值,list1重新賦值後指針發生改變,list2指針不變。
淺拷貝:list1調用copy()方法後與上面的賦值拷貝原理一樣,區別在於在二維列表中,list1和list2都指向了list[0] = ‘zero‘這個值,並沒有復制它。
深拷貝:list1復制了二維列表中的值,而list2不變。
#復制拷貝 list1 = [1,2,[3,4]] list2 = list1 print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1 = [‘zero‘,2,[3,4]] print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] # 淺拷貝 list1 = [1,2,[3,4]] list2 = list1.copy() print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[0] = ‘zero‘ print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[2][0] = ‘three‘ print(list1) # [‘zero‘, 2, [‘three‘, 4]] print(list2)# #[1, 2, [‘three‘, 4]] #深拷貝 import copy list1 = [1,2,[3,4]] list2 = copy.deepcopy(list1) print(list1) #[1, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[0] = ‘zero‘ print(list1) #[‘zero‘, 2, [3, 4]] print(list2) #[1, 2, [3, 4]] list1[2][0] = ‘three‘ print(list1) #[‘zero‘, 2, [‘three‘, 4]] print(list2) # [1, 2, [3, 4]]
- bytes
#字符串轉二進制 print(‘中國‘.encode(‘utf-8‘)) #編碼 b‘\xe4\xb8\xad\xe5\x9b\xbd‘ #相反 解碼 print(b‘\xe4\xb8\xad\xe5\x9b\xbd‘.decode(‘utf-8‘)) #中國
python(課堂筆記2)