python3 字符串切片_python获取字符串某段

python3 字符串切片_python获取字符串某段1.切片的定义 用于处理列表的部分元素,Python称之为切片 结构: [start:end:step] 不指定step(步长)时,默认step(步长)为1 一般是不加步长,即取一段连续的索引 对于step: (1)当step为负数时,即取反 a = 'ABCDE' pri

python3

1.切片的定义

用于处理列表的部分元素,Python称之为切片

结构: [start:end:step]    不指定step(步长)时,默认step(步长)为1

一般是不加步长,即取一段连续的索引

对于step:

(1)当step为负数时,即取反

a = 'ABCDE'
print(a[::-1])
print(a[::-2])
EDCBA
ECA

可以看到,步长为-1则是取反且取得是一段连续的索引,而为-2的时候,则是取反的同时按照步长去取索引值

(2)step为正数时,则按照从左到右的顺序按步长取值

即步长的符号决定了取值的方向,为正则从左往右取,为负则从右往左取,其值决定了取那些数据

对于

a = 'ABCDE'
print(a[0:6:-1])

其输出的是空,原因就在于其取值方向,负数代表从右往左取值,而对于切片是索引0-6,而取值是按照从右往左取值,0的左边没有值,所以取得就是空的

要想有取值,这时我们切片的方向也应该是从右往左,即

a = 'ABCDE'
print(a[-1:-6:-1])
  print(a[6:0:-1])
EDCBA
EDCBA

切片的起点和终点已经决定了其排列的顺序,对于0-6,其排列就是ABCDE,对于-1到-6(或者6到0)其排列就是EDCBA,而步长及其符合只是决定了最终取值的顺序和内容,并不会改变其排列的顺序,所以这也就是为什么print(a[0:6:-1])输出的是空的原因。

2.常用方法–以下来自菜鸟教程

 capitalize() 将字符串的第一个字符转换为大写

count() 用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。

str="www.runoob.com"
sub='o'
print ("str.count('o') : ", str.count(sub))

sub='run'
print ("str.count('run', 0, 10) : ", str.count(sub,0,10))
str.count('o') :  3
str.count('run', 0, 10) :  1

endswith() 用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回 True,否则返回 False。可选参数 “start” 与 “end” 为检索字符串的开始与结束位置。

startswith() 检查字符串是否是以指定子字符串 substr 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。

find() 测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。

rfind() 类似于 find()函数,不过是从右边开始查找.

index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

rindex() 类似于 index(),不过是从右边开始.

isalpha() 如果字符串至少有一个字符并且所有字符都是字母或中文字则返回 True, 否则返回 False

isdigit() 如果字符串只包含数字则返回 True 否则返回 False

islower() 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False

isupper() 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False

join(seq) 以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串

s1 = "-"
s2 = ""
seq = ("r", "u", "n", "o", "o", "b") # 字符串序列
print (s1.join( seq ))
print (s2.join( seq ))
r-u-n-o-o-b
runoob

len(string) 返回字符串长度

ljust() 方法返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串。(在处理二进制时添加指定位置为多少数据时常用)

默认为空格,可指定填充字符

str = "Runoob example....wow!!!"

print (str.ljust(50, '*'))
Runoob example....wow!!!**************************

rjust() 返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串

lower() 转换字符串中所有大写字符为小写

upper() 转换字符串中的小写字母为大写

swapcase() 将字符串中大写转换为小写,小写转换为大写

replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。

str = "www.w3cschool.cc"
print ("菜鸟教程旧地址:", str)
print ("菜鸟教程新地址:", str.replace("w3cschool.cc", "runoob.com"))
 
str = "this is string example....wow!!!"
print (str.replace("is", "was", 3))
菜鸟教程旧地址: www.w3cschool.cc
菜鸟教程新地址: www.runoob.com
thwas was string example....wow!!!

split() 通过指定分隔符对字符串进行切片,如果第二个参数 num 有指定值,则分割为 num+1 个子字符串。

str = "this is string example....wow!!!"
print (str.split( ))       # 以空格为分隔符
print (str.split('i',1))   # 以 i 为分隔符
print (str.split('w'))     # 以 w 为分隔符
['this', 'is', 'string', 'example....wow!!!']
['th', 's is string example....wow!!!']
['this is string example....', 'o', '!!!']

strip() 在字符串上执行 lstrip()和 rstrip(),去除字符串左右两边空格时常用

 

 

今天的文章python3 字符串切片_python获取字符串某段分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/51796.html

(0)
编程小号编程小号
上一篇 2023-09-01
下一篇 2023-09-01

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注