資料型別常用操作
資料型別小結(各資料型別常用操作)
一.數字/整型int
- int()強行轉化數字
二.bool型別False&True
- bool()強行轉化布林型別.
- 0,None,及各個空的字元型別為False.其餘均為Ture.
三.字串str
-
str()強行轉化字串
#列表轉化字元換 nums = [11,22,33,44] for a in range(0,len(nums)): nums[a] = str(nums[a]) result = ''.join(nums) print(result)
-
.upper()轉化大寫
name = 'abc' new_name = name.upper() print(new_name)
-
.lower()轉化小寫
name = 'ABC' new_name = name.lower() print(new_name)
-
.replace()替換
message = input('請輸入"大傻逼"') new_mes = message.replace('傻逼','**') print(new_mes) #.replace('原字元','替換字元','替換個數')
-
.strip()去首尾空格
name = ' abc ' new_name = name.strip() print(new_name) #.rstrip()去除右側空格.lstrip()去除左側空格
-
.split()分割
name = 'abcdefg' new_name = name.split('d') print(new_name) #.split('分割點',分割次數)
-
.isdecimal()判斷是否可以轉化位數字
while True: num = input('請輸入內容:') num1= num.isdigit()#print(num1) 數字的話輸出True,非數字輸出FALSE if num1: print('你輸入正確') break else: print('請輸入數字')
-
.startswith() 判斷是否以()開頭,輸出值為bool型別
name = 'bigox' print(name.startswith('big'))
-
endswith() 判斷是否以()結尾,輸出值為bool型別 同.startswith()用法相同
-
.format()格式(同字串格式化)
name = '我叫:{0},年齡:{1}'.format('bigox',24) print(name)
-
.encode() :編碼轉換
name= '劉'#直譯器讀取到記憶體後,按照unicode編碼儲存:8位元組. print(name.encode('utf-8'))#轉化為utf-8編碼
-
.join()迴圈每個元素,並在元素之間加入連線符.
name = 'bigox' new_name = '_'.join(name) print(new_name)#輸出結果為b_i_g_o_x
四.列表list
-
列表轉換list()
#列表轉化字元換 nums = [11,22,33,44] for a in range(0,len(nums)): nums[a] = str(nums[a]) result = ''.join(nums) print(result)
-
.pop(索引)
a = li.pop(2) #在列表中刪除,並將刪除的此資料賦值給a
name = ['bigox','xo','ox'] name.pop(1) print(name)
-
del 列表 [索引]
name = ['bigox','xo','ox'] del name[0:2] print(name)
-
.append()列表最後追加元素
lst = ["麻花藤", "林俊傑", "周潤發", "周芷若"] print(lst) lst.append("wusir") print(lst)
-
.insert()在指定的索引位置插入元素
lst = ["麻花藤", "林俊傑", "周潤發", "周芷若"] print(lst) lst.insert(1,"wusir") print(lst)
-
remove()**指定元素刪除
name = ['bigox','xo','ox'] name.remove(xo) print(name)
-
.clear()**清空
-
.extend**()新增
li = ["alex", "WuSir", "ritian", "barry", "wenzhou"] s = 'qwert' li.extend(s) print(li) #--------------------------- lst = ["王志文", "張一山", "苦海無涯"] lst.extend(["麻花藤", "麻花不疼"]) print(lst)
-
.reverse()反轉
v = [1,2,3,4,5,6] v.reverse() print() #[6, 5, 4, 3, 2, 1]
-
.sort排序
v = [1,3,7,4,5,6] v.sort() print()#[1, 3, 4, 5, 6, 7] #v.sort() 從小到大排序(預設) #v.sort(reverse=True)從大到小排序
五.元組tuple
-
強制轉換:
-
tuple('adfadfasdfasdfasdfafd')
v1 = tuple('adfadfasdfasdfasdfafd') print(v1) # ('a', 'd', 'f', 'a', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 'f', 'd')
-
tuple([11,22,33,44])
v1 = tuple([11,22,33,44]) print(v1)# (11, 22, 33, 44)
-
-
元組子元素不可變,而子元素內部的子元素是可以變的,取決於元素是否為可變物件
-
元組中如果只有一個元素,一定要新增一個逗號,否者不是元組
六.字典dict
-
字典鍵的資料型別不能為list和tuple,值可以為任何型別.
-
.keys()取鍵
for i in info.keys(): print(i)
-
.values()取值
for i in info.values(): print(i)
-
.items()取鍵值對
for i in info.items(): print(i)
-
.get()以鍵取值,如果鍵不存在返回原定結果
info = {'k1':'v1','k2':'v2'} a = info.get('k1') print(a)#v1 info2 = ['11111'] b = info.get('11111',22222) print(b)#22222
-
.update()更新_存在覆蓋更新,不存在新增
info = {'k1':'v1','k2':'v2'} info.update({'k1':'v0','k3':'v3'}) print(info)#{'k1': 'v0', 'k2': 'v2', 'k3': 'v3'}
七.集合set
-
無序,不可重複
-
在集合中True與數字1重複,False與數字0重複
-
.add() 新增
info = {'k1','k2'} info.add('k3') print(info)
-
.discard()刪除
info = {'k1','k2','k3'} info.discard('k3') print(info)
-
要修改,需要先刪除再新增
-
.clear()清空
-
.update()
info = {'k1','k2'} info.update({'k1','k3','v3'}) print(info)#{'k1','k2','k3','v3'}
-
.intersection() 交集
命令後的 () 可以是集合,也可以是列表.
info = {1,2,3} print(info.intersection({1,3,4})) #{1,3}
-
.union()並集
info = {1,2,3} print(info.union({1,3,4}))#{1,2,3,4}
-
.difference()差集
info = {1,2,3} print(info.union({1,3,4}))#{2,4}