二、字符串方法
1 # # 字符串不能修改 2 # s = 'abc' 3 # # s[1] = 'd' 4 # # print(s) #報錯,不能修改 5 # s = 'cde' #這種可以的 6 7 # # 注意: 可變變量:list(數組),字典 8 # # 注意:不可變變量:元組,字符串 9 10 #字符串方法都不會改變原來字符串的值 11 12 # strip()# strip默認去掉首位空格和換行符 13 name = ' cm beauteful' 14 print(name) 15 print(name.strip()) 16 print(name.strip('l'))# strip還可以去掉兩邊的參數 17 print(name.lstrip())# lstrip,去掉左邊空格 18 print(name.rstrip())# rstrip,去掉左邊空格 19 20 21 # count查找字符出現的次數 22 print(name.count('c')) 23 24 # capitalize首字母大寫 25 name = 'abc' 26 print(name.capitalize()) 27 28 # center 字符串被其他字符放在中間 29 name = 'abc' 30 print(name.center(20,'-')) 31 print(name) 32 33 # find 找下標 34 print(name.find('a'))# 不存在返回-1,多個返回第一個 35 36 # index 找下標 37 print(name.index('a'))#index如果找不到報錯 38 39 # upper把所有字符變成大寫 40 # lower把所有字符變成小寫 41 print(name.upper()) 42 print(name.lower()) 43 44 # endswitch 判斷字符串以什么結尾,返回真或者假 注意:可用於判斷文件格式 45 # startswitch 判斷字符串以什么開頭,返回真或者假 46 file_name ='111.xls' 47 print(file_name.endswith('.xls')) 48 print(file_name.startswith('.xls')) 49 50 # format 傳入的是一個字典,格式化輸出 51 name = '{name} welcome' 52 print(name.format(name = 'meng')) 53 print('sssss') 54 55 # replace字符串替換,如果有多個全部替換 56 name = 'chen' 57 print(name.replace('chen','cheng')) 58 59 # isdigit判斷是否為數字 常用 60 print('wos2'.isdigit()) #False 61 62 # islower 判斷是否是小寫字母 忽略 63 print('231a'.isalnum())# 判斷是否包含數字或字母 忽略 64 print('add'.isalpha())# 判斷是不是英文字母 忽略 65 66 # split,常用 67 s ='a,b,c,d' 68 # 將字符串分割成數組,去掉, 69 print(list(s))#強制轉換成數組list,輸出['a', ',', 'b', ',', 'c', ',', 'd'] 70 a =s.split(',') 71 print('數組為:',a) 72 print('a b c d e'.split())#不帶參數時,默認為空格分割 73 74 75 # join很常用,一個字符把兩個字符串相連,可以循環的變量都可以用,數組,字典,元組都可以用 76 # 如果字符中間包含布爾型,或者數字的,都不可以連接,先強制類型轉換 77 # 比如:注意:將數組轉成字符串 78 str=['a','b','c'] 79 str1=('a','b','c') 80 str2={'name':'cm','age':11} 81 print(','.join(str)) 82 print(','.join(str1))#name,age 83 print(','.join(str2))#name,age 84 print(''.join(str))#將數組轉成字符串abc
三、字典
key value 形式,取值方便,速度快
1 # 定義 2 d = {'name': 'chenmeng', 3 'age': 11, 4 'add': '北京'} 5 print(d) 6 7 # 取值 8 print(d['name']) # chenmeng # 【key】取值,如果不存在key報錯 9 print(d.get('name')) # .get方法取值,如果不存在時,獲取到空時,不會報錯返回none,所以用get稍好 10 print(d.get('names', '請求不到時默認顯示內容')) 11 12 # 增加1:給【】賦值,如果key存在則修改,如果不存在新增 13 d['shengao'] = 180 14 # 增加2:setdefault 15 d.setdefault('weight', '60') 16 17 # 修改 18 d['shengao'] = 190 19 20 # 刪除pop 21 d.pop('shengao') # 字典是無序的,每次打印順序可能不一致,所以要指定 22 23 # 隨機刪除 24 d.popitem() 25 26 # 刪除del 27 d = {'name': 'chenmeng', 28 'age': 11, 29 'add': '北京'} 30 del d['name'] # {'add': '北京', 'age': 11} 31 32 # 清空字典 33 # d.clear() 34 35 # 查詢所有key,查詢所有values,然后對所有key或者字段做操作 36 print(d.keys()) # 獲取到所有的key,返回數組:['age', 'add'] 37 print(d.values()) # 獲取到所有的values,返回數組:[11, '北京'] 38 39 # 判斷key是否在字典里面,默認判斷的是key 40 if 'age' in d: 41 print(d.get('age')) 42 else: 43 print('d中不包含age') 44 45 # 只打印key 46 for i in d: 47 print(i) 48 49 # items()將字段轉換成二維數組,如果要使用的話,還需要強制類型轉換成list(d.items) 50 print(d.items()) 51 print(list(d.items())[0]) 52 53 # 強制類型轉換 54 int() 55 str() 56 list() # 轉換成數組 57 58 # 打印key,value用items,性價比低,一般用下面的寫法 59 for k, v in d.items(): 60 print(k, v) 61 # 輸出: age 11 62 # add 北京 63 64 # 取出所有key value 65 for i in d: 66 print(i, d.get(i)) 67 68 # 格式化代碼操作:工具欄code->refomate 69 70 71 # 72 # # 練習取值 73 74 # list和字典混合查看輸出 75 strus = [ 76 {'name': 'chenmeng', 77 'age': 11, 78 'add': '北京'}, 79 {'name': 'chenmeng1', 80 'age': 11, 81 'tell': 177000000} 82 ] 83 print(strus[0]['name']) #chenmeng 84 85 86 # stus = { 87 # 'ybq': { 88 # 'age': 18, 89 # 'sex': '男', 90 # 'addr': '昌平區', 91 # 'money': 10000000, 92 # 'jinku': { 93 # '建行卡': 80000, 94 # '工商卡': 800000, 95 # '招商卡': 8000000 96 # } 97 # }, 98 # 'tlx': { 99 # 'age': 19, 100 # 'sex': '女', 101 # 'addr': '昌平區', 102 # 'money': 10000000, 103 # 'huazhuangpin': ['chanle','haha'] 104 # }, 105 # 'mpp': { 106 # 'age': 19, 107 # 'sex': '女', 108 # 'addr': '昌平區', 109 # 'money': 10000000, 110 # "bag": { 111 # 'lv': '一車', 112 # '鱷魚':10 113 # } 114 # }, 115 # } 116 # 117 # # 打印所有ybq的錢 118 # # 方法1 119 # print(stus['ybq']['jinku']['建行卡']+stus['ybq']['jinku']['工商卡']+stus['ybq']['jinku']['招商卡']) 120 # print(sum(stus['ybq']['jinku'].values())) 121 # 122 # # 方法2 123 # summoney=0 124 # allmoney = stus['ybq']['jinku'].values() 125 # print(allmoney) 126 # for money in allmoney: 127 # summoney+=money 128 # print(summoney)
四、元組
1 # 六、元組 2 # 元組一旦被定義不能重新賦值,不能改變 3 # 元組也是list,取值和list一樣 4 # tpye()查看變量類型 5 a=(1) 6 print(type(a)) 7 a=(1,2) #元組 8 print(type(a)) 9 10 # 只有兩個函數 11 # count 找個數 12 # index 找索引 13 14 a = (1,2,4,1) 15 print(a.count(1)) 16 print(a.index(1)) 17 18 19 a = ('我','們','學習','我') 20 print(a.count('我')) 21 print(a.index('學習'))