python3基礎知識整理之字串處理

2021-08-08 23:15:15 字數 838 閱讀 7057

顯而易見,計算機當中的一切都只是對0和1的抽象,當我們與0和1直接打交道時,比如、壓縮包等,我們往往不用太關心抽象方式。但是在處理字串等物件的時候,不弄清楚其中的工作機制則會寸步難行,乙個常見的問題就是亂碼。

以下是我總結的部分python3字串處理相關知識,關於字符集和字元編碼的知識這裡不再累述。

1,string與bytes

python3中對這兩種型別做了嚴格的區分,從外界比如網路讀取的資料一般是bytes,要作為string使用必須進行顯式的轉換,轉換方法如下文。

2,decode與encode

bytes.decode("gb2312"):解碼bytes,將bytes轉換為gb2312編碼的string。

string.encode("gb2312"):編碼string,將string轉換為gb2312編碼的bytes。

python以utf-8作為預設編碼,因此上述方法的引數的預設值都是utf-8。

decode做的是解釋的工作,encode則在做對映工作。如開頭所說,計算機世界的硬通貨是0和1,而各種編碼則可以比喻成軟通貨。我們用decode指定的規則(編碼)解釋0和1,用encode去將字串對映成0和1,從而完成相應的工作:處理或者傳輸資料。

在理解上述規則之後,再加以了解字串原來的編碼,就可以避免出現亂碼的情況了。這裡又分兩種情況。1,**中的字串的編碼取決於**檔案的編碼。2,外界輸入的字串的編碼取決於其本身的編碼。

3 字典 python3基礎知識

字典是無序集合,通過鍵值對訪問,異構,可巢狀,迭代物件。乙個鍵對應乙個值,但是乙個值可以對應多個鍵,所以字典可以看做乙個對映表 下面是幾種建立字典的方法 直接建立 d 逐步新增 d d name yjx d age 22 d school hit 鍵值對,用的比較多,但是key只能算是字串 d di...

Python3之反射基礎知識

反射 通過字串的形式匯入模組。通過字串的形式去模組中找到指定函式並執行 i input 請輸入模組名 cc import i import 可以通過輸入的字串來匯入模組 等同於import com as cc print cc.f1 usr bin env python3 encoding utf ...

python3基礎知識一

數字型別包括 int float bool complex 複數 還支援複數,複數的實部a和虛部b都是浮點型。數值計算 string 字串 eg print str 輸出字串 print str 0 1 輸出第乙個到倒數第二個的所有字元,下標前閉後開 print str 2 輸出從第三個開始的後的所...