1.字串
字串常用功能
name = ‘derek’
print(name.capitalize()) #首字母大寫 Derek
print(name.count(“e”)) #統計字串出現某個字元的個數 2
print(name.center(10,‘*’)) #列印30個字元,不夠的“*”補齊 **derek***
print(name.endswith(‘k’)) #判斷字串是否以“k”結尾 Trueprint(‘244’.isdigit()) #判斷字元是否為整數 True
print(‘+’.join([‘1’,‘2’,‘3’])) #把join後的內容加入到前面字串中,以+為分割符 1+2+3
print(‘\n123’.strip()) #strip去掉換行符
print(“1+2+3+4”.split(“+”)) #以+為分隔符生成新的串列,預設不寫為空格 [‘1’, ‘2’, ‘3’, ‘4’]
msg = ‘my name is {name} and i am {age} old’
print(msg.format(name=‘derek’,age=20))my name is derek and i am 20 old
字串的內建方法
1 # string.capitalize() 把字串的第一個字元大寫
2 # string.center(width) 傳回內容是原字串居中,並使用空格填充至長度為 width 的新字串
3 # string.count(str, beg=0, end=len(string)) 傳回 str 在 string 裡面出現的次數,如果 beg 或者 end 指定則傳回指定範圍內 str 出現的次數
4 # string.decode(encoding=‘UTF-8’, errors=‘strict’) 以 encoding 指定的編碼格式解碼 string,如果出錯預設報一個 ValueError 的 異 常 , 除 非 errors 指 定 的 是 ‘ignore’ 或 者‘replace’
5 # string.encode(encoding=‘UTF-8’, errors=‘strict’) 以 encoding 指定的編碼格式編碼 string,如果出錯預設報一個ValueError 的異常,除非 errors 指定的是‘ignore’或者‘replace’
6 # string.endswith(obj, beg=0, end=len(string)) 檢查字串是否以 obj 結束,如果beg 或者 end 指定則檢查指定的範圍內是否以 obj 結束,如果是,傳回 True,否則傳回 False.
7 # string.expandtabs(tabsize=8) 把字串 string 中的 tab 符號轉為空格,tab 符號預設的空格數是 8。
8 # string.find(str, beg=0, end=len(string)) 檢測 str 是否包含在 string 中,如果 beg 和 end 指定範圍,則檢查是否包含在指定範圍內,如果是傳回開始的索引值,否則傳回-1
9 # string.index(str, beg=0, end=len(string)) 跟find()方法一樣,只不過如果str不在 string中會報一個異常.
10 # string.isalnum() 如果 string 至少有一個字元並且所有字元都是字母或數字則傳回 True,否則傳回 False
11 # string.isalpha() 如果 string 至少有一個字元並且所有字元都是字母則傳回 True,否則傳回 False
12 # string.isdecimal() 如果 string 只包含十進位制數字則傳回 True 否則傳回 False.
13 # string.isdigit() 如果 string 只包含數字則傳回 True 否則傳回 False.
14 # string.islower() 如果 string 中包含至少一個區分大小寫的字元,並且所有這些(區分大小寫的)字元都是小寫,則傳回 True,否則傳回 False
15 # string.isnumeric() 如果 string 中只包含數字字元,則傳回 True,否則傳回 False
16 # string.isspace() 如果 string 中只包含空格,則傳回 True,否則傳回 False.
17 # string.istitle() 如果 string 是標題化的(見 title())則傳回 True,否則傳回 False
18 # string.isupper() 如果 string 中包含至少一個區分大小寫的字元,並且所有這些(區分大小寫的)字元都是大寫,則傳回 True,否則傳回 False
19 # string.join(seq) 以 string 作為分隔符,將 seq 中所有的元素(的字串表示)合併為一個新的字串
20 # string.ljust(width) 傳回一個原字串左對齊,並使用空格填充至長度 width 的新字串
21 # string.lower() 轉換 string 中所有大寫字元為小寫.
22 # string.lstrip() 截掉 string 左邊的空格
23 # string.maketrans(intab, outtab]) maketrans() 方法用於建立字元對映的轉換表,對於接受兩個引數的最簡單的呼叫方式,第一個引數是字串,表示需要轉換的字元,第二個引數也是字串表示轉換的標的。
24 # max(str) 傳回字串 str 中最大的字母。
25 # min(str) 傳回字串 str 中最小的字母。
26 # string.partition(str) 有點像 find()和 split()的結合體,從 str 出現的第一個位置起,把 字 符 串 string 分 成 一 個 3 元 素 的 元 組 (string_pre_str,str,string_post_str),如果 string 中不包含str 則 string_pre_str == string.
27 # string.replace(str1, str2, num=string.count(str1)) 把 string 中的 str1 替換成 str2,如果 num 指定,則替換不超過 num 次.
28 # string.rfind(str, beg=0,end=len(string) ) 類似於 find()函式,不過是從右邊開始查詢.
29 # string.rindex( str, beg=0,end=len(string)) 類似於 index(),不過是從右邊開始.
30 # string.rjust(width) 傳回一個原字串右對齊,並使用空格填充至長度 width 的新字串
31 # string.rpartition(str) 類似於 partition()函式,不過是從右邊開始查詢.
32 # string.rstrip() 刪除 string 字串末尾的空格.
33 # string.split(str=“”, num=string.count(str)) 以 str 為分隔符切片 string,如果 num有指定值,則僅分隔 num 個子字串
34 # string.splitlines(num=string.count(‘\n’)) 按照行分隔,傳回一個包含各行作為元素的串列,如果 num 指定則僅切片 num 個行.
35 # string.startswith(obj, beg=0,end=len(string)) 檢查字串是否是以 obj 開頭,是則傳回 True,否則傳回 False。如果beg 和 end 指定值,則在指定範圍內檢查.
36 # string.strip([obj]) 在 string 上執行 lstrip()和 rstrip()
37 # string.swapcase() 翻轉 string 中的大小寫
38 # string.title() 傳回“標題化”的 string,就是說所有單詞都是以大寫開始,其餘字母均為小寫(見 istitle())
39 # string.translate(str, del=“”) 根據 str 給出的表(包含 256 個字元)轉換 string 的字元,要過濾掉的字元放到 del 引數中
40 # string.upper() 轉換 string 中的小寫字母為大寫
2.串列
#建立
fruit = [‘apple’,‘pear’,‘grape’,‘orange’]#切片
print(fruit[1]) #pear
print(fruit[1:3]) #[‘pear’, ‘grape’]
print(fruit[-1]) #orange
print(fruit[:2]) #[‘apple’, ‘pear’]# 追加
fruit.append(‘peach’)
print(fruit) #[‘apple’, ‘pear’, ‘grape’, ‘orange’, ‘peach’]# 刪除
fruit.remove(‘peach’) #刪除指定的
print(fruit) #[‘apple’, ‘pear’, ‘grape’, ‘orange’]fruit.pop() #刪除串列最後一個元素
print(fruit) #[‘apple’, ‘pear’, ‘grape’]del fruit[2] #刪除指定的索引
print(fruit) #[‘apple’, ‘pear’]# 插入
fruit.insert(1,‘grape’) #把‘grape’加入到索引為1的位置
print(fruit) #[‘apple’, ‘grape’, ‘pear’]# 修改
fruit[2] = ‘orange’ #直接修改
print(fruit) #[‘apple’, ‘grape’, ‘orange’]
# 擴充套件
fruit1 = [‘apple’,‘orange’]
fruit2 = [‘pear’,‘grape’]
fruit1.extend(fruit2)
print(fruit1) #[‘apple’, ‘orange’, ‘pear’, ‘grape’]# 統計
print(fruit1.count(‘apple’)) #1# 排序
fruit1.sort()
print(fruit1) #[‘apple’, ‘grape’, ‘orange’, ‘pear’]fruit1.reverse()
print(fruit1) #[‘pear’, ‘orange’, ‘grape’, ‘apple’]# 獲取下標
print(fruit1.index(‘apple’)) #3# 同時獲取下標和值
for index,item in enumerate(fruit1):
print(index,item)# 結果
0 pear
1 orange
2 grape
3 apple
3.元組
# 建立元組
fruit = (‘apple’,‘orange’,‘grape’)# 常用功能
print(fruit.count(‘apple’)) #1
print(fruit.index(‘orange’)) #1
4.字典
# 建立
fruit = {1:‘apple’,2:‘orange’,3:‘grape’}
print(fruit)# 增加
fruit[4] = ‘pear’
print(fruit) #{1: ‘apple’, 2: ‘orange’, 3: ‘grape’, 4: ‘pear’}# 修改
fruit[4] = ‘peach’
print(fruit) #{1: ‘apple’, 2: ‘orange’, 3: ‘grape’, 4: ‘pear’}# 刪除
fruit.pop(4) #刪除指定的key
print(fruit) #{1: ‘apple’, 2: ‘orange’, 3: ‘grape’}# 查詢value
print(fruit.get(1)) #apple
fruit = {1:‘apple’,2:‘orange’,3:‘grape’}
# 迴圈
for k,v in fruit.items():
print(k,v)1 apple
2 orange
3 grapefor k in fruit.keys():
print(k)1
2
3for v in fruit.values():
print(v)apple
orange
grape
5.集合
# 建立
fruit = set([‘apple’,‘orange’,‘pear’])
print(fruit) #{‘orange’, ‘pear’, ‘apple’}# 新增
fruit.add(‘grape’) #add只能新增一個
print(fruit) #{‘apple’, ‘orange’, ‘pear’, ‘grape’}fruit.update([‘peach’,‘banana’]) #update新增多個
print(fruit)
{‘banana’, ‘pear’, ‘apple’, ‘peach’, ‘grape’, ‘orange’}# 刪除
fruit.remove(‘banana’) #刪除指定的
print(fruit)fruit.pop() #隨機刪除
print(fruit)
num1 = set([11,22,33,44])
num2 = set([33,44,55,66])# 並集
print(num1.union(num2)) #{66, 11, 22, 33, 44, 55}# 差集
print(num1.difference(num2)) #{11, 22}# 交集
print(num1.intersection(num2)) #{33, 44}
作者:zhang_derek
源自:
http://www.cnblogs.com/derek1184405959/p/8041926.html