课程来源:中国大学MOOC_Python语言程序设计_北京理工大学_崇天
三、基本数据类型
3.3 字符串类型及操作
字符串
字符串2类共4种 表示方法
- 由一对单引号或双引号表示,仅表示单行字符串
"请输入带有符号的温度值:"
或者
'C'
- 由一对三单引号或三双引号表示,可表示多行字符串
```Python
语言```
- 如果希望在字符串中包含双引号或单引号
'这里有个双引号(")'
或者
"这里由个单引号(')"
- 如果希望在字符串中既包含单引号又包括双引号呢?
'''这里既有单引号(')又有双引号(")'''
字符串的序号
正向递增序号 和 反向递减序号
[图片上传失败...(image-9356b5-1584464622139)
字符串的使用
使用[]获取字符串中一个或多个字符
- 索引:返回字符串中单个字符 <字符串>[M]
"请输入带有符号的温度值:"[0]
或者
TempStr[-1]
- 切片:返回字符串中一段字符子串 <字符串>[M:N]
"请输入带有符号的温度值:"[1:3]
或者
TempStr[0:-1]
字符串切片高级用法
使用[M:N:K]根据步长对字符串切片
- <字符串>[M:N],M缺失表示至开头,N缺失表示至结尾
"〇一二三四五六七八九十"[:3]
>>> "〇一二"
- <字符串>[M:N:K],根据步长k对字符串切片
"〇一二三四五六七八九十"[1:8:2]
>>> "一三五七"
- 字符串逆序
# 将字符串逆序
"〇一二三四五六七八九十"[::-1]
>>> "十九八七六五四三二一〇"
字符串的特殊字符
转义符\
- 转义字符表达特定字符的本意
"这里有个双引号(\")"
>>> 这里有个双引号(")
- 转义符形成一些组合,表达一些不可打印的含义
"\b"回退
"\n"换行(光标移动到下行首)
"\r"回车(光标移动到本行首)
字符串操作符
函数word
获取星期字符串
- 输入:1-7的整数,表示星期几
- 输出:输入整数对应的星期字符串
- 例如:输入3,输出 星期三
#WeekNamePrintV1.py
weekStr = "星期一星期二星期三星期四星期五星期六星期日"
weekId = eval(input("请输入星期数字(1-7):"))
pos = (weekId - 1) * 3
print(weekStr[pos:pos+3])
#WeekNamePrintV2.py
weekStr = "一二三四五六日"
weekId = eval(input("请输入星期数字(1-7):"))
print("星期" + weekStr[weekId - 1])
字符串处理函数
函数word
Unicode编码
- 统一字符编码,即覆盖几乎所有字符的编码方式
- 从0到 1114111(0x10FFFF)空间,每个编码对应一个字符
- Python字符串中每个字符都是Unicode编码字符
"1 + 1 = 2" + chr(10004)
>>> '1 + 1 = 2✔'
"这个字符♉的Unicode值是:"+ str(ord("♉"))
>>> '这个字符♉的Unicode值是:9801'
for i in range(12):
print(chr(9800 + i), end = "")
>>> ♈♉♊♋♌♍♎♏♐♑♒♓
字符串处理方法
”方法“在编程中是一个专有名词,面向对象
- ”方法“特指<a>.<b>()风格中的函数<b>()
- 方法本身也是函数,但与<a>有关,<a>.<b>()风格使用
- 字符串及变量也是<a>,存在一些方法
字符串类型的格式化
格式化是对字符串进行格式表达的方法
- 字符串格式化使用.format()方法,用法如下:
- <模板字符串>.format(<逗号分隔的参数>)
槽
[图片上传失败...(image-2c3995-1584464622139)
[图片上传失败...(image-4913c5-1584464622139)
槽内部对格式化的配置方式
{<参数序号>:<格式控制标记>}
单元小结
- 正向递增序号、反向递增序号、<字符串>[M:N:K]
- +、*、len()、str()、hex()、oct()、ord()、chr()
- .lower()、.upper()、.split()、.count()、.replace()、.center()、.strip()、.join()