取字符串的某一部分_2.3 python字符串

de0dbc430d0d8c36830cbcc2b6e1b740.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


如果想取出部分字符,就可以通过下标的方式来实现

注意:下标从 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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值