Python學習入門到精通:字符串的概念
- 2020 年 2 月 13 日
- 筆記
1. 字符串的創建
字符串是python當中最常用的數據類型,我們用它來處理文字內容,下面的代碼演示了3中創建字符串的方法
str_1 = 'python' str_2 = "python" str_3 = """python""" print(str_1, type(str_1)) print(str_2, type(str_2)) print(str_3, type(str_3))
在pycharm新建一個腳本,本教程如果要求在交互式解釋器里寫代碼,那麼默認就是在pycharm里編寫代碼。
上面的代碼里,我分別用單引號,雙引號,3對雙引號創建一個字符串,使用print函數輸出這3個變量的內容以及他們的類型,實際輸出結果為
python <class 'str'> python <class 'str'> python <class 'str'>
這3種創建字符串的方法,常用的是前兩種,在使用print函數時,多個數據可以用逗號分隔。
多個字符串可以使用 + 連接在一起,生成新的字符串,在交互式解釋器中跟隨我操作
>>> a = 'I' >>> b = 'like' >>> c = 'python' >>> d = a + ' ' + b + ' ' + c >>> d 'I like python' >>> len(d) 13
我定義了三個變量,其類型都是字符串,最後使用 + 將他們連接在一起,在連接時,為了不讓單詞緊挨着,我在中間加入了' ',也是一個字符串,裏面的內容是空格。
使用內置函數len(),可以獲取字符串的長度,你又學會了一個新的內置函數。
2. 索引的概念
這是你在學習編程語言時接觸到第一個十分重要的專業概念,後面學習列表時,你還會用到它,不理解索引,就沒辦法學習切片。
python中,字符串是字符的有序集合。這裡,你主要關注有序二字。
'python' '443' '*&^%$'
第一個字符串里有5個字母,第二個字符串里有3個數字,第三個字符串里有5個字符,在編程語言里,這些都統稱為字符,所以,字符串是字符的集合。
那麼有序是怎麼體現的呢?有序意味着,每一個字符都有自己的位置,專業術語叫索引,比如字符串'python', 我現在問你,這個字符串的第3個字符是什麼,你會回答說是字符t,從左向右數,的確是t, 這個就是索引。
但與所熟悉的計數方式不同,編程語言里,索引都是從0開始的,因此,t在字符串python中的索引是2

不僅如此,python還支持反向索引,t的反向索引是-4。
你可以通過索引來訪問字符串里的某個字符,在編輯器里跟隨我操作
>>> a = 'python' >>> a[0] 'p' >>> a[-2] 'o' >>> a[1:3] 'yt' >>> a[10] Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: string index out of range
根據索引訪問字符串里的某個字符時,需要使用一對中括號[],在其中填寫索引,如果索引超出了範圍,就會引發IndexError,這是初學者非常容易犯的錯誤。
a[1:3],表示範圍索引1到索引3這個範圍內的字符,得到的結果是'yt', 這就是切片操作,關於切片操作會有專門的文章講解。
3. 字符串的運算
對於字符串,有以下運算

字符串連接操作,在介紹字符串概念時已經有過講解,下面在交互式解釋器里跟隨我操作,學習這些操作符
>>> a = 'py' >>> b = 'python' >>> a + b 'pypython' >>> a*3 'pypypy' >>> b[3] 'h' >>> b[0:2] 'py' >>> a in b True >>> b not in b False
關於 % ,格式化字符串,會有專門的文章進行講解。