初学__Python——Python数据类型之字符串
目錄
一、Python中的字符串
二、字符串中的轉義字符
三、操作字符串
四、字符串中的索引與分片
五、格式化字符串
六、字符串、數字類型的轉換
七、原始字符串(Raw String)
一、Python中的字符串
Python中的字符串用于表示和存儲文本。字符串通常由單引號('...')、雙引號("...")或者三引號('''...''',"""...""")包圍,其中由三引號包圍的字符串可以由多行組成。在Python腳本中,大段的敘述性字符串通常由三引號包圍。
?字符串中可以包含數字、字母、中文字符、特殊符號,以及一些不可見的控制字符,如換行符、制表符等,
字符串的形式一般如下:
>>> str1 = 'abcd' >>> str2 = "python" >>> str3 = '123' >>> str4 = 'a = 1 + 2 ^ 3 * 4' >>> str5 = 'Can\'t' # 在字符串中使用轉義字符包含一個單引號 >>> str5 "Can't" >>> str6 = "Can't" # 使用雙引號包含一個單引號 >>> str6 "Can't"二、字符串中的轉義字符
如果要在字符中包含控制字符,或者一些在Python中表示特殊含義的字符,需要使用轉義字符。
| \n | 換行符 |
| \t | 制表符 |
| \r | 回車 |
| \\ | 表示\ |
| \' | 表示一個單引號,而不是字符串結束 |
| \" | 表示一個雙引號,而不是字符串結束 |
轉義字符的使用示例:
>>> t = 'Hi,\tPython!' # 在字符串中加入制表符 >>> print(t) Hi, Python! # 在 Hi, 與 Python! 之間有一段制表符的距離 >>> t 'Hi,\tPython!' # 只有在使用 print 函數輸出字符串時才會解釋字符串中的轉義字符 >>> t = 'Hi,\nPython!' # 在字符串中加入換行符 >>> print(t) Hi, Python! >>> t = 'Hi,\\nPython!' # 如果在字符串中加入兩個“\\”,則是對第2個“\”進行轉義輸入“\”字符本身 >>> print(t) Hi,\nPython!三、操作字符串
| string.capitalize() | 將字符串的第一個字母大寫 |
| string.count() | 獲得字符串中某一子字符串的數目 |
| string.find() | 獲得字符串中某一子字符串的起始位置 |
| string.isalnum() | 檢測字符串中是否僅包含0-9、A-Z、a-z |
| string.isalpha() | 檢測字符串中是否僅包含A-Z、a-z |
| string.isdigit() | 檢測字符串中是否僅包含數字 |
| string.islower() | 檢測字符串中是否均為小寫字母 |
| string.isspace() | 檢測字符串中所有字符是否均為空白字符 |
| string.istitle() | 檢測字符串中的單詞是否為首字母大寫 |
| string.isupper() | 檢測字符串中是否均為大寫字母 |
| string.isjoin() | 連接字符串 |
| string.lower() | 將字符串全部轉換為小寫 |
| string.split() | 分割字符串 |
| string.swapcase() | 將字符串中大寫字母轉換為小寫、小寫字母轉換為大寫 |
| string.title() | 將字符串中的單詞首字母大寫 |
| string.upper | 將字符串中全部字符轉換為大寫 |
| len(string) | 獲取字符串長度 |
注:在上述的操作中,使用字符串操作函數,或使用運算符對字符串 str 進行操作時,并不會改變字符串 str 本身的內容,而是返回修改后的新字符串,如果要修改原字符串,則可以使用下面的代碼。
>>> str = str.title() # 將 str.title() 函數的返回值賦值給 str ,即修改 str >>> str 'Hello,Tutu!'- string.split( [sep [,maxsplit]])
- sep:可選參數,指定分割的字符。
- maxsplit:可選參數,分割次數
四、字符串中的索引與分片
Python中的字符串相當于一個不可變序列的列表。一旦聲明一個字符串,則該字符串中的每個字符都有了自己固定的位置。在Python中可以使用 "[]" 來訪問字符串中指定位置上的字符,這種方法類似于C語言中的數組。
與數組類似,在Python字符串中,字符的序號也是從 0 開始的,即 string[0] 表示字符串 string 中的第一個字符
與C語言不同的是,Python還允許以負數表示字符的序號,負數表示從字符串尾部開始計算,此時最后一個字符的序號為 -1 ,而不是 -0 。
>>> str = 'butterfly' >>> str[1] # 取字符串中序號為 1 的字符,也就是第 2 個字符 'u' >>> str[-0] # -0 即 0,就是取字符串中第一個字符 'b' >>> str[-1] # 取字符串中最后一個字符 'y' >>> str[-3] # 從字符串尾部開始計算,最后一個字符的序號為 -1,str[-3] 即取倒數第三個字符 'f' >>> str[1:5] # 取從字符串中第二個字符到第六個字符的內容,但不包含第六個字符 'utte' >>> str[1:1] # 由于不包含第二個字符,故為空 '' >>> str[1:-1] # 從字符串中第二個字符到最后一個字符,但不包含最后一個字符 'utterfl' >>> str[0:-2] # 從字符串中第一個字符到倒數第二個字符,但不包含倒數第二個字符 'butterf' >>> str[:-2] # 與 str[0:-2] 相同 'butterf'五、格式化字符串
在Python中,字符串中的字符順序是不可變的。但是在某些情況下,可能又要根據不同的需求,要修改字符串的內容。這時就可以使用Python中的格式化字符串功能。
在Python中,可以在字符串中使用以 "%" 開頭的字符,以在腳本中改變字符串中的內容。
| %c | 單個字符 |
| %d | 十進制整數 |
| %o | 八進制整數 |
| %s | 字符串 |
| %x | 十六進制整數,其中的字母小寫 |
| %X | 十六進制整數,其中的字母大寫 |
六、字符串、數字類型的轉換
在某些情況下,字符串可能完全由數字組成,并且該字符串還需要在腳本中進行算術運算。此時最簡單的操作就是使用 int() 函數將字符串轉換為數字,將數字轉換為字符串可以使用 str() 函數。
>>> '10' + 4 Traceback (most recent call last):File "<stdin>", line 1, in <module> TypeError: can only concatenate str (not "int") to str >>> int('10') + 4 14七、原始字符串(Raw String)
原始字符串是Python中一類比較特殊的字符串,以大寫字母 R 或者小寫字母 r 開始。在原始字符串中,字符 "\" 不再表示轉義字符的含義。
原始字符串是為了正則表達式設計的,也可以用來方便地表示 Windows 系統下的路徑,不過,如果路徑以 "\" 結尾那么會出錯。
>>> import os >>> path = r'e:\book' # 使用原始字符串 >>> os.listdir(path) # 列出目錄中的內容 ['hello', 'code', 'test'] >>> os.listdir('e:\book') # Python2.x 中執行這個命令會報錯,Python3 中可正常運行 ['hello', 'code', 'test']### 原始字符串中不能以 "\" 結尾?
總結
以上是生活随笔為你收集整理的初学__Python——Python数据类型之字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初学__Python——Python数据
- 下一篇: websocket python爬虫_p