Python基础之字符串
字符串定义
字符串是字符序列的表示,可以由一对单引号(‘’)、双引号(“”)、三引号(’’’)构成。
原始字符串
思考:Windows的路径 G:\publish\codes\03\3.3 在python中是否可以直接写?
借助原始字符串 以”r”开头,原始字符串不会把反斜线当成特殊字符串
print(r' G:\publish\codes\03\3.3') #输出结果: G:\publish\codes\03\3.3
字符串索引
字符串包括2种序号体系,正向递增序号和反向递增序号。如果字符串的长度为L,正向递增需要以最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1,反向递减序号以最右侧字符序号为-1,向左依次递减,最左侧字符序号为-L。
字符串切片
<字符串>[N:M:L] 从字符串中取出子字符串
从起始N位开始,到结束M位的前一位结束(不包含结束位本身) ,遵循[左闭右开)的原则
[:] 提取从开头(默认位置0)到结尾(默认位置-1)的整个字符串
[N:] 从N提取到结尾
[:M] 从开头提取到M - 1
[N:M] 从N提取到M - 1
[N:M:L] 从N提取到M- 1,每L 个字符提取一个
[N] 从字符中取单个字符
[::-1] 字符串的逆序
s="hello python"
print(s[0]) #结果:h
print(s[0],s[6],s[-1]) #结果:h p n
print(s[1:-4]) #结果:ello py
print(s[:7]) #结果:hello p
print(s[1:]) #结果:ello python
print(s[:]) #结果:hello python
print(s[::-1]) #结果:nohtyp olleh
字符串基本操作符
操作符 | 描述 |
---|---|
+ | x+y :连接两个字符串x和y |
* | x*n:复制n次字符串x |
x in s | 如果x是子串,返回True,否则返回False |
str[i] | 索引,返回第i个字符 |
str[N:M] | 切片,返回索引第N到第M的子串,其中不包含M |
print("hello"+" python") #结果:hello python
print("hello\t"*3) #结果:hello hello hello
print("h" in "python") #结果:True
例题:获取星期字符串
程序读入一个表示星期几的数字(1-7),输出对应的星期字符串名称。如输入3,返回“星期三”
week_str="星期一星期二星期三星期四星期五星期六星期日"
week_id=eval(input("请输入星期数字(1-7):"))
pos=(week_id-1)*3 #输入的星期数与week_str的序号的等差数列关系
print(week_str[pos:pos+3]) #获得从起始位置pos开始且长度为3的子串
---