Python--字符串

本文详细介绍了Python中的字符串,包括创建、赋值和访问方法,强调了字符串的不可变性,并探讨了各种操作符和内建函数,如成员、连接、重复、比较、长度计算、最大最小值获取、枚举与zip、查找、判别、替换、分割、大小写转换、简化和翻转等。通过实例展示了如何在Python中高效地操作字符串。
摘要由CSDN通过智能技术生成

字符串类型在Python中是十分重要的类型,他一般用引号中间添加字符的形式表达,不同于其他语言的是,Python中双引号(” “)与单引号(’ ‘)是不予区分的。都可以用来表示字符串

创建、赋值和访问

1. 两种创建方式

(1) 直接赋值

s = "abcdef"

(2) 通过str()函数

str()函数的作用,相当于是通过传入的参数,生成一个string型的对象,这个传入的参数可能是整型,浮点型,也能是列表,元组,字典等。

s = str(21) # >>> "21"
s = str(12.3) # >>> "12.3"
s = str([1, 2, 3]) # >>> "[1, 2, 3]"

需要注意的是,“传入的是什么,得到的就是什么”比如我们传一个列表进去的话,得到的字符串的第一个字符可不是列表的第一个元素,而是"[",同理 , 也被看做是字符串的一部分

2. 访问字符串

(1) 访问单个字符

s = "1234567"
print(s[1]) # >>> "2"
print(s[-1]) # >>> "7"
print(s[-7]) # >>> "1"

字符串当然也是序列,所以也满足每一个元素(也就是其中的每一个字符)都对应一个索引,索引的设计与其他语言一样,从0开始。

此外,Python还提供了“负索引”,就是令最后一个元素的索引为-1,倒数第二个元素的索引为-2,以此类推,第一个元素的索引就是-n(其中,n为序列的长度)

(2) 访问切片

s = "1234567"
print(s[1:4]) # >>> "234"

切片是Python中非常有特色的语法,当然,切片应用的对象是序列(字符串,列表,元组),他可以用来非常方便的表示序列的一部分。切片有3个参数控制,他的形式可以如下表示:

[begin: end: step]

中间由 : 隔开,begin 表示要得到的序列的起始位置,并且包含这个位置,而 end 则表示要得到序列的结束位置,但是不能包含这个位置的元素。例如:

s = "1234567"
s1 = s[2:5] # >>> 取的是s中第2个位置开始,一直到第4个位置的数,也就是"345"

如果我们不明确给出begin和end的相应参数,那么,begin会默认为0,end会默认为n(序列长度),比如:

s = "1234567"
s1 = s[:5] # >>> s1 = "12345"
s2 = s[2:] # >>> s2 = "34567"
s3 = s[:] # >>> 复制了整个s

而切片的最后一个参数step则表示“步长”,比如:

s = "1234567"
s1 = s[1:6:2] # >>> 从第1个位置开始,直到第5个位置结束,每次“跳”2步,得到"246"

可以理解为,每取一个元素后,向后“跳”的步数为step,比如上面的例子就是跳了2步。但是step这个参数不是一定要给出的,他默认值为1,而且当使用默认值1时,step之前的那个 : 如果没有特殊的需求,也是可以省略不写的。

(3) 负切片

有一种比较特殊的切片使用方式,那就是“负切片”,通俗地讲,就是令step为负数的切片,既然我们上面已经说过Python提供“负索引”,那么根据相同的道理,负切片自然就是从后开始,每次向前跳相应的步数,比如:

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值