標籤:app 索引 https string sla map form opened 單詞
如果一個女孩子喜歡看龍貓,那麼請珍惜她,呵護她
任何一門語言,字串總是最基本也是最需要掌握的一個變數,想想入門的Hello World,輸出的就是字串。
官方文檔:https://docs.python.org/3/library/stdtypes.html#text-sequence-type-str。
字串也成為字元序列,
一、表現形式1.1 基本表現形式
字串可以用單引號、雙引號、三引號引起來,特點如下:
- 單引號和雙引號相似,內部如果還要使用則需要用斜杠進行轉義
- 三引號是三個單引號或雙引號,可以進行換行,也就是說包含所有字面的符號
‘yiwangzhibujian‘"yiwangzhibujian"‘‘‘yiwangzhibujian‘‘‘"""yiwangzhibujian"""
上面的形式都是一樣的,同樣可以使用字串類來建立字串,字串類為str
name=str(‘yiwangzhibujian‘)print(name)
這種方法瞭解即可。
1.2 其他表現形式
待續
二、常用方法
字串的所有方法,詳見官方文檔:https://docs.python.org/3/library/stdtypes.html#string-methods。只說使用頻率最高的幾個。
2.1 常用方法
str.center(width[, fillchar])
主要用來格式化字串,如果width小於字串長度,返回原始字串,大於字串長度,則字串置中,兩側用fillchar填充,fillchar預設為空白格
str.count(sub[, start[, end]])
:返回指定字串出現的次數
str.encode(encoding="utf-8", errors="strict")
轉換成位元組數組
str.endswith(suffix[, start[, end]])
判讀字串是否以指定字串結尾
str.find(sub[, start[, end]])
返回指定字串所在的索引,沒有返回-1
str.join(iterable):
使用該字串來串連可迭代對象
str.lower():
轉換小寫
str.replace(old, new[, count]):
字串替換,count為替換出現的前幾個,預設為所以
str.rfind(sub[, start[, end]]):
返回字串最後一次出現的位置
str.split(sep=None, maxsplit=-1):
使用指定字元進行分割,若指定次數則從左側開始計算
str.splitlines([keepends]):
按照分行符號進行分割,分行符號不包含其中,分行符號包括車
str.startswith(prefix[, start[, end]]):
判斷字元是否以指定字元開始
str.strip([chars]):
去除前後指定字元,預設為空白格
str.upper():
將所有字元轉換成大寫
2.2 全域方法
也有一些全域方法可以作用在字串上:
len():
獲得字串的長度
這個方法還是比較常用的。
2.3 不常用方法
不常用方法也有很多,大致瞭解即可,以後有個需求再來看,如下:
- str.capitalize():返回字串首字母大寫形式
- str.casefold():返回字串的casefolded形式(???)
- str.expandtabs(tabsize=8):將定位字元用空格進行替換
- str.format(*args, **kwargs):格式化字串
- str.format_map(mapping):類似於str.format
- str.index(sub[, start[, end]]):類似於find但是未找到會報錯
- str.isalnum():是否全部為數字或者字母
- str.isalpha():是否都是字母
- str.isdecimal():是否都是數字
- str.isdigit():是否都是數字
- str.isidentifier():???
- str.islower():是否都是小寫
- str.isnumeric():是否都是數字
- str.isprintable():是否都是可列印字元
- str.isspace():是否是空格
- str.istitle():是否是標題
- str.isupper():是否都是大寫
- str.ljust(width[, fillchar]):類似於str.center(width[, fillchar]),左填充
- str.lstrip([chars]):刪除左側指定字元,預設為空白格
- static str.maketrans(x[, y[, z]]):???
- str.partition(sep):分割指定字串首次出現的位置
- str.rindex(sub[, start[, end]]):類似於str.rfind(sub[, start[, end]]),但是找不到會報錯
- str.rjust(width[, fillchar]):和str.ljust(width[, fillchar])一個性質,右側填充
- str.rpartition(sep):和str.partition(sep)一個性質,分割字串最後一次出現的地方
- str.rsplit(sep=None, maxsplit=-1):按指定字元進行分割,若指定數量則從最右邊開始
- str.rstrip([chars]):同str.lstrip([chars])一個性質,刪除右側
- str.swapcase():將大小寫進行互轉
- str.title():將每個單詞大首字母進行大寫
- str.translate(table):字元對應表使用???
- str.zfill(width):???
三、字串格式化
字串格式化其實用的地方也不是很多,知道用法即可,現在沒有這個需求,以後會補充。
四、字串其他知識4.1 字串的本質
簡單來說是有序的字元的集合。因此所有可應用於集合的方法都可應用於字串:
name=‘yiwangzhibujian‘print(‘k‘ in name)print(‘w‘ in name)for i in name: print(i)========控制台輸出========FalseTrueyiwangzhibujian
View Code
字串和Java一樣不可變。
4.2 字串下標
字串也可以支援下標訪問,從0開始,還有一個特性就是可以使用負數,-1代表最後一個,以此類推:
name=‘yiwangzhibujian‘print(name[0])print(name[-1])========控制台輸出========yn
注意使用的時候防止下標越界。
4.3 字串切片
切片不只應用於字串,也應用list、tuple等集合,功能強大,使用簡單,要掌握用法,基本文法如下:
str[i:j]
- 包含下邊界,不包含上邊界
- 下邊界預設為0
- 上邊界預設為字串長度
另外分區還引入第三個值,步進,因此預設不用的時候步進為1,若步進為負數,表示倒敘進行分區。
4.4 字串拼接
字串使用+號拼接算是一種常見的用法,但是字串和數字拼接是會報錯的,必需將數字提前進行轉換,str()來完成轉換
【Python】Java程式員學習Python(七)— 文本類詳解(字串、str)