hzk20220818

python 不可变数据类型--字符串

不可变数据类型:

字符串是不可变数据类型,但一些性质类似列表(每个位置都有索引),但因为是不可变数据类型,字符串生成了就不能发生改变(不能 str[0]='d'),有些字符串方法‘改变了’,只是因为生成了一个新的不一样的字符串,原字符串并没有改变

字符串截取(字符串有索引和数组一样)

str[beg:end]:
从下标为beg开始算起,切取到下标为 end-1 的元素,切取的区间为[beg, end)
str = 'python str'
print str[3:6]

str[begin: end: step]
取 [begin, end) 之间的元素,每隔 step 个取一个
print str[2:7:2]

字符串反转,python字符串没有直接反转的函数,将字符串转换成字符列表,利用列表截取思想

(字符串类型是不允许直接修改元素的,不可变数据类型)

str2=str1[::-1]

字符串排序

python中没有直接的方法对字符串进行排序,原因是字符串类型是不允许直接修改元素的,将字符串转换成字符数组, 然后借用sorted函数进行排序, 最后用join方法重新拼装字符串。

chars='python'
# 写法一
ls=list(chars)
ls.sort()
print(''.join(ls))

字符串长度

len()
函数返回字符串的长度:
a = "Hello, World!"
print(len(a))

字符串切分split

split() 以分隔符的将字符串拆分为子字符串,**并返回成一个列表**:

a = "Hello, World!"
print(a.split(","))
['Hello','World!']

字符串内建函数(原字符串不变,生成新字符串)

strip() 方法删除开头和结尾的空白字符
lower() 返回小写的字符串
upper() 方法返回大写的字符串
capitalize() 把字符串的第一个字符大写
replace('a','a1') 用另一段字符串来替换字符串

检查字符串内容

in 或 not in

检查字符串中是否存在特定短语或字符
txt = "China is a great country"
x = "ina" in txt
print(x)

endswith()

如果字符串以指定值结尾,则返回 true

startswith(substr, beg=0,end=len(string))

检查字符串是否是以指定子字符串 substr 开头,是则返回 True,否则返回 False。

find()

在字符串中搜索指定的值并返回它被找到的位置

index()

在字符串中搜索指定的值并返回它被找到的位置

is什么()

isalnum()	如果字符串中的所有字符都是字母数字,则返回 True。
isalpha()	如果字符串中的所有字符都是字母,则返回 True。
isdigit()	如果字符串中的所有字符都是数字,则返回 True。
islower()	如果字符串中的所有字符都是小写,则返回 True。
isupper()	如果字符串中的所有字符都是大写,则返回 True
isspace()	如果字符串中的所有字符都是空白字符,则返回 True。

posted on 2022-10-12 11:27  hzk-shzdx-university  阅读(559)  评论(0编辑  收藏  举报

导航