Python基礎資料型別方法補充
阿新 • • 發佈:2020-08-01
str 補充的方法:
-
capitalize():首字母大寫,其餘變小寫
s = 'liBAI' s1 = s.capitalize() print(s1) # Libai
-
swapcase():大小寫翻轉
s = 'LiBai' s1 = swapcase() print(s1) # lIbAI
-
title():每個單詞首字母大寫,其餘變小寫。以非字母隔開即為每個單詞
s = 'libai& dufu@ sushi' s1 = s.title() print(s1) # Libai& Dufu@ Sushi
-
center():居中,要指定總長度,還可設定填充物
s = 'libai' s1 = s.center(10,'&') # 前面引數指定總長度,後面指定除字串外的填充物,用引號引起來 print(s1) # &&libai&&&
-
find():通過元素找索引,找到第一個即返回值,找不到返回-1
s = 'libai' print(s.find('b')) # 2 print(s.find('z')) # -1
-
index():通過元素找索引,找到第一個即返回值,找不到就報錯
s = 'libai' print(s.index('z')) # ValueError: substring not found
tuple 補充的方法:
-
元組中如果只有一個元素,並且沒有逗號,例 ('a'),那麼它不是元組,它與該元素的資料型別一致。
tu1 = ('s') print(type(tu1)) # <class 'str'> tu2 = ('s',) print(type(tu2)) # <class 'tuple'>
-
index():通過元素找索引,找到第一個即返回值,找不到就報錯
-
count():計算某元素出現的次數
s = 'libaidufubaijuyisushi' print(s.count('i')) # 5
list 補充的方法:
-
index():通過元素找索引,找到第一個即返回值,找不到就報錯
-
sort():預設對數字從小到大排序,對原列表排序,不會產生新列表
l1 = [2,5,1,7,4,2,] l1.sort() print(l1) # [1, 2, 2, 4, 5, 7] l1 = ['alex','yellow','xyz','blue'] l1.sort() print(l1) # ['alex', 'blue', 'xyz', 'yellow'] 按首字母排序
-
sort(reverse=True): 從大到小
l1 = [4,2,4,5,7,1,3] l1.sort(reverse=True) print(l1) # [7, 5, 4, 4, 3, 2, 1] l1 = ['alex','yellow','xyz','blue'] l1.sort(reverse=True) print(l1) # ['yellow', 'xyz', 'blue', 'alex'] 按首字母排序
-
reverse():將原列表翻轉
l1 = [1,'a',3,'x','y'] l1.reverse() print(l1) # ['y', 'x', 3, 'a', 1]
-
列表相加:將兩個列表相加為一個新列表
l1 = ['a','b','c'] l2 = [1,2,3] l3 = l1 + l2 print(l3) # ['a', 'b', 'c', 1, 2, 3]
-
列表與整數相乘:將列表重複n次,產生一個新列表
l1 = ['a','b','c'] l2 = l1 * 3 print(l2) # ['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']
列表的特性:
- 正向迴圈一個列表時,如果刪除某個元素,那麼這個元素後面所有元素都會向前進以為,它們的索引相比之前也會前進一位
- 迴圈一個列表時,最好不要改變列表的大小,這樣會影響最終的結果
# 例:刪除列表索引為奇數的元素
li = [11,22,33,44,55]
# 1.直接刪除
del li[1::2]
# 2.倒序法刪除元素,從末尾往首部刪除,被刪除元素之前的元素索引不會受到影響。
for i in range(len(li)-1,-1)
if i % 2 == 1:
li.pop(i)
print(li)
# 3.思維置換法
li = [11,22,33,44,55]
l2 = []
for i in range(len(li)):
if i % 2 == 0:
l2.append(li[i])
li = l2
print(li)
dict 補充的方法:
update():
-
字典的增:
dic = {'name':'太白','age': 18} dic.update(sex='男',height=175) print(dic) # {'name': '太白','age': 18,'sex': '男','height': 175}
dic.update([(1,'a'),(2,'b'),(3,'c')])
print(dic)
# {'name':'太白','age': 18,1: 'a',2: 'b',3: 'c'}
# 字典的更新: 鍵已存在則修改,不存在則新增
dic1 = {"name":"jin","age":18,"sex":"male"}
dic2 = {"name":"alex","weight":75}
dic1.update(dic2)
print(dic1)
# {'name': 'alex', 'age': 18, 'sex': 'male', 'weight': 75}
print(dic2)
# {'name': 'alex', 'weight': 75}
- fromkeys():鍵為一個可迭代物件,值共用一個
# 例:
dic = dic.fromkeys('abc',[])
print(dic)
# {'a':[],'b':[],'c':[]}
# 一個值若被修改則所有的值都會修改
dic[a].append(666)
print(dic)
# {'a':[666],'b':[666],'c':[666]}
-
list 和 set之間的轉換:
#list --> set set(list) #set --> list list(set)
-
所有資料型別都可以轉換為bool值:
- 只有以下幾個資料轉換bool值為False:
'', 0, {}, (), [], set(), None
- 只有以下幾個資料轉換bool值為False: