字符串类型
字符串是由0个或多个字符组成的有序字符序列。字符串由一对单引号或一对双引号表示 "请输入带有符号的温度值: " 或者 ‘C’。字符串是字符的有序序列,可以对其中的字符进行索引 “请” 是 "请输入带有符号的温度值: " 的第0个字符
-
字符串有 2类共4种 表示方法
- 如果希望在字符串中包含双引号或单引号呢? ‘这里有个双引号(")’ 或者 “这里有个单引号(’)”
- 如果希望在字符串中既包括单引号又包括双引号呢? ‘’’ 这里既有单引号(’)又有双引号 (") ‘’’
-
字符串的序号
正向递增序号 和 反向递减序号 -
字符串的使用
使用[ ]获取字符串中一个或多个字符-
索引:返回字符串中单个字符 <字符串>[M]
"请输入带有符号的温度值: "[0] 或者 TempStr[-1] -
切片:返回字符串中一段字符子串 <字符串>[M: N]
"请输入带有符号的温度值: "[1:3] 或者 TempStr[0:-1]
-
索引:返回字符串中单个字符 <字符串>[M]
-
字符串切片高级用法
- 使用[M: N: K]根据步长对字符串切片
- <字符串>[M: N],M缺失表示至开头,N缺失表示至结尾 “〇一二三四五六七八九十”[:3] 结果是 “〇一二”
- <字符串>[M: N: K],根据步长K对字符串切片"〇一二三四五六七八九十"[1:8:2] 结果是 “一三五七” “〇一二三四五六七八九十”[::-1] 结果是 “十九八七六五四三二一〇”
- 使用[M: N: K]根据步长对字符串切片
-
字符串的特殊字符
- 转义符 \
- 转义符表达特定字符的本意 “这里有个双引号( \ “)” 结果为 这里有个双引号(”)
- 转义符形成一些组合,表达一些不可打印的含义
"\b"回退 "\n"换行(光标移动到下行首) “\r” 回车(光标移动到本行首)
字符串操作符
| 操作符及使用 | 描述 |
|---|---|
| x+y | 连接两个字符串x和y |
| nx 或 xn | 复制n次字符串x |
| x in s | 如果x是s的子串,返回True,否则返回False |
- 字符串处理函数
| 函数及使用 | 描述 |
|---|---|
| len(x) | 长度,返回字符串x的长度 len(“一二三456”) 结果为 6 |
| str(x) | 任意类型x所对应的字符串形式 str(1.23)结果为"1.23" str([1,2])结果为"[1,2]" |
| hex(x) 或 oct(x) | 整数x的十六进制或八进制小写形式字符串 hex(425)结果为"0x1a9" oct(425)结果为"0o651" |
| chr(u) | x为Unicode编码,返回其对应的字符 |
| ord(x) | x为字符,返回其对应的Unicode编码 |
-
Unicode编码
- Python字符串的编码方式
- 统一字符编码,即覆盖几乎所有字符的编码方式
- 从0到1114111 (0x10FFFF)空间,每个编码对应一个字符
- Python字符串中每个字符都是Unicode编码字符
- 字符串处理方法
| 方法及使用 1/3 | 描述 |
|---|---|
| str.lower() 或 str.upper() | 返回字符串的副本,全部字符小写/大写"AbCdEfGh".lower() 结果为 “abcdefgh” |
| str.split(sep=None) | 返回一个列表,由str根据sep被分隔的部分组成"A,B,C".split(",") 结果为 [‘A’,‘B’,‘C’] |
| str.count(sub) | 返回子串sub在str中出现的次数"an apple a day".count(“a”) 结果为 4 |
| 方法及使用 2/3 | 描述 |
|---|---|
| str.replace(old, new) | 返回字符串str副本,所有old子串被替换为new"python".replace(“n”,“n123.io”) 结果为 “python123.io” |
| str.center(width[,fillchar]) | 字符串str根据宽度width居中,fillchar可选"python".center(8,"=") 结果为 ‘=python=’ |
| 方法及使用 3/3 | 描述 |
|---|---|
| str.strip(chars) | 从str中去掉在其左侧和右侧chars中列出的字符"= python= “.strip(” =np") 结果为 “ytho” |
| str.join(iter) | 在iter变量除最后元素外每个元素后增加一个str",".join(“12345”) 结果为 “1,2,3,4,5” #主要用于字符串分隔等 |
-
字符串类型的格式化
字符串格式化使用.format()方法,用法如下:
<模板字符串>.format(<逗号分隔的参数>)
这些你学会了么
- 正向递增序号、反向递减序号、<字符串>[M:N:K]
- +、*、len()、str()、hex()、oct()、ord()、chr()
- .lower()、.upper()、.split()、.count()、.replace()
- .center()、.strip()、.join()、.format()格式化