PYTHON資料型別 高階

2022-03-09 14:47:53 字數 2813 閱讀 4539

str

#captalize 首字母大寫,其餘小寫

s1.capitalize()

#swapcase 大小寫翻轉

s1.swapcase()

#每個單詞首字母大寫

s1='hello say3you'

s1.title()#you變成you

#居中s1.center(30)

s1.center(20,'*')

# 找索引

s1.find('a')#找到第乙個返回,找不到返回-1

s1.index('b')#找到第乙個返回,找不到報錯

tuple

#(3)不是元祖,(3,)才是元祖,而list、dic單元素卻不受影響

tu.index('aa')

tu.count('2')

list

基本操作

#排序

l1.sort()#從小到大

l1.sort(reverse=true)#從大到小

l1.reverse()#反轉

#相加l1+l2

#與數字相乘

l1*3

刪除

#這種刪除並不能滿足要求,迴圈刪除過程已經改變列表元素序號

l1 = [11, 22, 33, 44, 55]

for index in range(len(l1)):

if index % 2 == 1:

l1.pop(index)

print(l1)

#下面可以的

l1 = [11, 22, 33, 44, 55]

new_l1 =

for index in range(len(l1)):

if index % 2 ==0:

l1 = new_l1

print(l1)

字典

#字典也有update(必須是鍵值對),set也有update(迭代增加),list也有extend(迭代增加)

dic =

dic.update(hobby='美女', hight='175')

dic.update([(1, 'a'),(2, 'b'),(3, 'c'),(4, 'd')]) # 面試會考,列表內元祖對

dic.update(((1, 'a'),(2, 'b'),(3, 'c'),(5, 'd'))) #元祖內元祖對

#fromkeys的用法,就是from各種key而共用value

dic = dict.fromkeys([1,2,3],)#可迭代物件哦

不要遍歷字典過程中去改變字典的大小,會報錯

dic = 

for key in dic:

if 'k' in key:

dic.pop(key)

print(dic)

#報錯#下面才可以

l1 =

for key in dic:

if 'k' in key:

print(l1)

for i in l1:

dic.pop(i)

print(dic)

#下面也可以

for key in list(dic.keys()): # ['k1', 'k2', 'k3','age']

if 'k' in key:

dic.pop(key)

print(dic)

各種「零」

#0,''(),,{},set(),none

ll=[0,'',(),,{},set(),none]

for list in ll:

print(bool(list))

先給個報錯

s1 =b'中國'

^syntaxerror: bytes can only contain ascii literal characters.

再明確幾個計算機系統中的概念

當在文字框打字時,顯示的是記憶體中的內容(unicode編碼),當儲存後,就是通過該軟體編碼後的資料(當然呈現在你面前是進過軟體解碼的)

python螢幕列印其實已經經過了io操作了,也就是記憶體的資料已經寫入pycharm並列印出來,也就是記憶體的資料經過utf-8編碼並經過utf-8解碼。所以!!!!!所有print(s),s是什麼就列印什麼

s1 = '中國'

b1 = s1.encode('utf-8') # 編碼

print(b1,type(b1)) #列印結果就是 b'\xe4\xb8\xad\xe5\x9b\xbd'

print(s1)#列印結果就是中國

對於python中在字元前加b,例如b'hello',其實就是將其進行asicii編碼,print時,進行asicii解碼,所以能呈現b'hello'。而對於中文來說,b'中國'是錯誤的,因為不能進行ascii編碼,而如2中例子中描述,解碼時,byte型別解碼通過acsii解不出,只能呈現b'\xe4\xb8\xad\xe5\x9b\xbd'

對於檔案操作,必須制定編碼,否則就按照windows預設編碼gbk來。但是對於pycharm軟體,我們列印時並沒有制定編碼,我認為,因為是在pychar軟體內部操作,所以自動有編碼和解碼過程,例如

s='中古'

print(s)#中國經歷了utf-8編碼寫入pycharm,然後utf-8解碼讀出來,中國!!!

高階資料型別!

修改 2.末尾增加 3.指定索引插入 插入資料後,後面資料自動向後排 extend 方法可以把其他列表中的完整內容,追加到當前列表的末尾 temp list 孫悟空 豬二哥 沙師弟 name list.extend temp list 把temp list 資料追加到 name list 中4.刪除...

Java高階資料型別

blob 寫入 fileinputstream fis new fileinputstream file pstmt.setbinarystream 1,fis,int file.length pstmt.close fis.close 讀取 blob blob rs.getblob photo i...

Redis高階資料型別

獲取指定key對應偏移量上的bit值 getbit key offset 設定指定key對應偏移量上的bit值,value只能是1或0 setbit key offset value 對指定key按位進行交 並 非 異或 and or not xor 操作,並將結果儲存到destkey中 bitop...