![de0dbc430d0d8c36830cbcc2b6e1b740.png](https://i-blog.csdnimg.cn/blog_migrate/e72c3ed6cc23304d6eb7c89e7c19ad2d.png)
字符串是 Python 中最常用的数据类型。
字符串的定义
在Python中创建字符串很简单,只要为变量分配一个值即可,如下:
my_word = "python"
my_word = 'python'
my_word = """python"""
上述三种方法都是可以的,如果定义的内容中有引号怎么办?
my_word = "'小明'" # 如果定义内容中有单引号可以使用双引号包裹
my_word = '"小明"' # 如果定义内容中有双引号可以使用单引号包裹
my_word = """小'"明""" # 三引号原则上可以包裹一切
字符串输入
在前边学习python的输入输出时,其实已经初步了解了字符串的输入输出,我们再来回顾以下一下:
注意:input获取的数据, 都以字符串的方式进行保存,即使输入的是数字,那么也是以字符串方式保存
userName = input('请输入账号:')
print(f"用户名为:{userName}")
password = input('请输入密码:')
print(f"密码为:{password}")
输出结果随输入不同而不同
请输入用户名:admin
用户名为: admin
请输入密码:123456
密码为: 123456
字符串输出
字符串的输出其实跟之前的章节是一样的,那边讲的更详细(传送门
weather= "晴天"
temperature= "30摄氏度"
print('---------------------华丽的分隔线-----------------')
print(f"今天的天气是{weather}")
print(f"今天的温度是{temperature}")
print('--------------------------------------------------')
结果:
---------------------华丽的分隔线-----------------
今天的天气是晴天
今天的温度是30摄氏度
------------------------------------------------
下标和切片
下标
定义字符串name = ‘python’。对于其在内存中的理解,可以参考下图
![379c7b069112fe4a6a4ce74279a9496a.png](https://i-blog.csdnimg.cn/blog_migrate/47c302d7e16448b204878be94743e1d7.jpeg)
如果想取出部分字符,就可以通过下标的方式来实现
注意:下标从 0 开始
name = 'python'
print(name[0])
print(name[3])
print(name[-1])
运行结果:
p
h
n
切片
切片是指对操作的对象截取其中一部分的操作。
切片的语法: [起始:结束:步长]
注意:选取的区间从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身),步长表示选取间隔。
例:
name = 'python'
print(name[0:3]) # 取 下标0~2 的字符
运行结果:
pyt
name = 'python'
print(name[0:5]) # 取 下标为0~4 的字符
运行结果:
pytho
name = 'python'
print(name[3:5]) # 取 下标为3、4 的字符
运行结果:
ho
name = 'python'
print(name[2:]) # 取 下标为2开始到最后的字符
运行结果:
thon
name = 'python'
print(name[1:-1]) # 取下标为1开始到最后第2个之间的字符
运行结果:
ytho
带有步进参数的用法示例
>>> a = "abcdef"
>>> a[:3]
'abc'
>>> a[::2]
'ace'
>>> a[5:1:2]
''
>>> a[1:5:2]
'bd'
>>> a[::-2]
'fdb'
>>> a[5:1:-2]
'fd'
想一想:
给定一个字符串aStr, 请反转字符串
索引是通过下标取某一个元素
切片是通过下标去某一段元素
用法汇总
s = 'Hello World!'
print(s[4])
print(s[:]) # 取出所有元素(没有起始位和结束位之分),默认步长为1
print(s[1:]) # 从下标为1开始,取出 后面所有的元素(没有结束位)
print(s[:5]) # 从起始位置开始,取到 下标为5的前一个元素(不包括结束位本身)
print(s[:-1]) # 从起始位置开始,取到 倒数第一个元素(不包括结束位本身)
print(s[-4:-1]) # 从倒数第4个元素开始,取到 倒数第1个元素(不包括结束位本身)
print(s[1:5:2]) # 从下标为1开始,取到下标为5的前一个元素,步长为2(不包括结束位本身)
# python 字符串快速逆置,上面思考题的答案
print(s[::-1]) # 从后向前,按步长为1进行取值
字符串常见操作
以下是字符串得的常见操作:
![b72dfc738dc426af5e450f7b021096eb.png](https://i-blog.csdnimg.cn/blog_migrate/1a3ebabcf939c7528791b770b33909e1.jpeg)