Python的序列Ⅱ
阿新 • • 發佈:2017-09-07
gin 裏的 執行 rem 更新 過濾 off str2 get()
-
字符串
所有標準的序列操作對字符串同樣適用,但是字符串是不可變的。
字符串格式化:
#示例 >>> ‘num is: %d‘ % 18 ‘num is: 18‘ >>> ‘str is %s‘ % ‘string‘ ‘str is string #字段寬度和精度及‘*‘的作用 >>> ‘%10f‘ % math.pi #寬度10 ‘ 3.141593‘ >>> ‘%.10f‘ % math.pi#精度10 ‘3.1415926536‘ >>> ‘%10.2f‘ % math.pi#寬度10精度2 ‘3.14‘ >>> ‘%.*f‘ % (5,math.pi) ‘3.14159‘ >>> ‘%*f‘ % (5,math.pi) ‘3.141593‘ ##字符寬度和精度值之前還可以放置一個‘標誌‘ >>> ‘%010.2f‘ % math.pi #這裏的0表示將會用0填充 ‘0000003.14‘ >>> ‘%-10.2f‘ % math.pi#‘-‘表示左對齊 ‘3.14 ‘ >>> ‘%+10f‘ % math.pi ‘+‘表示在正數前顯示+號 ‘ +3.141593‘
字符串方法(內建函數)
#find(str, beg=0 end=len(string)) 檢測 str 是否包含在字符串中,如果指定範圍 beg 和 end ,則檢查是否包含在指定範圍內,如果包含返回開始的索引值,否則返回-1 >>> str = ‘taking off tight shoes‘ >>> str.find("off") 7 >>> str.find("off",8,15) -1 #join(seq) 以指定字符串作為分隔符,將 seq 中所有的元素(的字符串表示)合並為一個新的字符串 >>> s1 = ‘/‘ >>> seq = [‘‘,‘User‘,‘jm‘,‘Desktop‘] >>> s1.join(seq) ‘/User/jm/Desktop‘ #lower() 轉換字符串中所有大寫字符為小寫. >>> s1 = ‘HELLO,WORLD!‘ >>> s1.lower() ‘hello,world!‘ >>> s1.title() #首字母大寫 ‘Hello,World!‘ #replace(old, new [, count]) 將字符串中的 str1 替換成 str2,如果 count指定,則替換不超過 count次。 >>> s2 = ‘fake-smile jail cells‘ >>> s2.replace(‘l‘,‘xxx‘) ‘fake-smixxxe jaixxx cexxxxxxs‘ >>> s2.replace(‘l‘,‘xxx‘,2) ‘fake-smixxxe jaixxx cells‘ #split(str="", num=string.count(str)) num=string.count(str)) 以 str 為分隔符截取字符串,如果 num 有指定值,則僅截取 num 個子字符串 >>> s3 = ‘User/jm/Desktop‘ >>> s3.split(‘/‘) [‘User‘, ‘jm‘, ‘Desktop‘] # strip([chars]) 在字符串上執行 lstrip()和 rstrip()(移除字符串頭尾指定的字符) >>> s4 = ‘***Hello,***world***‘ >>> s4.strip(‘*‘) ‘Hello,***world‘ # translate() 方法根據參數table給出的表(包含 256 個字符)轉換字符串的字符,要過濾掉的字符放到 deletechars 參數中。 table = str.maketrans(‘cd‘,‘ef‘) #maketrans() 方法用於創建字符映射的轉換表 >>> s5 = ‘abcdefghijklmnopqrstuvwxyz‘ >>> s5.translate(table) ‘abefefghijklmnopqrstuvwxyz‘ #另 >>> bytes_tabtrans = bytes.maketrans(b‘abcdefghijklmnopqrstuvwxyz‘, b‘ABCDEFGHIJKLMNOPQRSTUVWXYZ‘) >>> s6.translate(bytes_tabtrans,b‘t‘) b‘HP://WWW.CNBLOGS.COM/TABBY/‘
-
字典
基礎知識
#創建及使用字典 >>> dic = {‘Jameson‘:‘1001‘,‘Jack‘:‘1002‘,‘Abel‘:‘1003‘}#創建 #使用dict()創建字典 >>> arr = [(‘name‘,‘jack‘),(‘num‘,1001)] >>> dic2 = dict(arr) >>> dic2 {‘num‘: 1001, ‘name‘: ‘jack‘} #或 >>> dic3 = dict(name=‘jack‘,num=‘1001‘) >>> dic3 {‘num‘: ‘1001‘, ‘name‘: ‘jack‘} #使用 >>> dic[‘Abel‘] ‘1003‘ >>> "Jack‘s num is %(Jack)s." % dic "Jack‘s num is 1002." >>> dic["Jack"] = 1005 #修改 >>> dic["Berg"] = 1007 #增加 >>> dic {‘Abel‘: ‘1003‘, ‘Jack‘: 1005, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007}
字典方法
#clear() 刪除字典內所有元素 >>> dic2 = {‘num‘: 1001, ‘name‘: ‘jack‘} >>> dic2.clear() >>> dic2 {} #copy() 復制字典 >>> dic4 = dic#這樣也可以 >>> dic4 {‘Abel‘: ‘1003‘, ‘Jack‘: 1005, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007} >>> dic5 = dic.copy() >>> dic5 {‘Abel‘: ‘1003‘, ‘Jack‘: 1005, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007} >>> dic["Jack"] = 1009#修改下dic的值試試 >>> dic4 {‘Abel‘: ‘1003‘, ‘Jack‘: 1009, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007}#淺復制 >>> dic5 {‘Abel‘: ‘1003‘, ‘Jack‘: 1005, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007}#深復制 #fromkeys(seq[, value])) 創建一個新字典,以序列seq中元素做字典的鍵,val為字典所有鍵對應的初始值 >>> dict.fromkeys([‘name‘,‘age‘]) {‘age‘: None, ‘name‘: None} >>> dict.fromkeys([‘name‘,‘age‘],‘unknown‘) {‘age‘: ‘unknown‘, ‘name‘: ‘unknown‘} #get(key, default=None) 返回指定鍵的值,如果值不在字典中返回默認值。 #另外,檢查字典是否有某鍵用in >>> ‘Jack‘ in dic True >>> ‘name‘ in dic False #items() 以列表返回可遍歷的(鍵, 值) 元組數組 >>> dic.items() dict_items([(‘Abel‘, ‘1003‘), (‘Jack‘, 1009), (‘Jameson‘, ‘1001‘), (‘Berg‘, 1007)]) #keys() 以列表返回一個字典所有的鍵 >>> dic.keys() dict_keys([‘Abel‘, ‘Jack‘, ‘Jameson‘, ‘Berg‘]) #pop 獲得給定鍵的值,然後將其從字典中移除(del,remove,pop,hah好多呀) >>> dic.pop("Jack") 1009 >>> dic {‘Abel‘: ‘1003‘, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007} #popitem() 隨機返回並刪除字典中的一對鍵和值. >>> dic.popitem() (‘Abel‘, ‘1003‘) >>> dic {‘Jameson‘: ‘1001‘, ‘Berg‘: 1007} #setdefault(key, default=None) 和get()類似, 但如果鍵不存在於字典中,將會添加鍵並將值設為default >>> dic.setdefault("Carl ") >>> dic {‘Carl ‘: None, ‘Jameson‘: ‘1001‘, ‘Berg‘: 1007} #values() 以列表返回字典中的所有值 >>> dic.values() dict_values([None, ‘1001‘, 1007]) #update(dic2) 把字典dict2的鍵/值對更新到dict裏 >>> dic6 = {‘Name‘: ‘Runoob‘, ‘Age‘: 7} >>> dic7 = {‘Sex‘: ‘female‘ } >>> dic6.update(dic7) >>> dic6 {‘Sex‘: ‘female‘, ‘Name‘: ‘Runoob‘, ‘Age‘: 7}
註:參考《Python基礎教程》(第2版)·修訂版
Python的序列Ⅱ