引言:
再识字符串,虽然字符串看起来并不像:列表,元组那样,一看就是存放了许多数据的容器。
但不可否认的是,字符串同样也是数据容器的一员。
字符串是字符的容器,一个字符串可以存放任意数量的字符。
如,字符串:“happy new year”.
每一个字符(字母)都有一个独属于他的下标;
字符串的下标索引:
和其他的容器一样,字符串也可以通过下标索引进行访问:
· 从前往后,下标从0开始;
· 从后往前,下标从-1开始;
代码展示:
str1 = "happy"
print(str1)
print("正序")
print(str1[0])
print(str1[1])
print(str1[2])
print(str1[3])
print(str1[4])
print("反序")
print(str1[-1])
print(str1[-2])
print(str1[-3])
print(str1[-4])
print(str1[-5])
注意: 字符串同元组一样,均是不可修改的
所以:
这些操作均无法进行;
字符串的常用操作:
查找特定字符串的下标索引值:
**语法:**字符串.index(字符串)
代码展示:
my_str = "happy new year"
print(my_str.index("new"))
字符串的替换:
**语法:字符串.replace(字符串1,字符串2)
功能:**将字符串内的全部:字符串1,替换为字符串2;
注意:不是修改字符串本身,而是得到了一个新的字符串!
代码展示:
# 字符串的替换
str1 = "happy"
str2 = "sad"
new_str = str1.replace(str1, str2)
print(new_str, str1)
字符串的分割:
**语法:字符串.spilt(分割字符串)
功能:**按照指定的分割符字符串,将字符串划分为多个字符串,并存入列表对象中;
注意:字符串本身不变,而是得到了一个列表对象;
代码展示:
# 字符串的分割
my_str = "happy new year"
my_str_list = my_str.split(" ")
print(f"将字符串{my_str}进行spilt分割后得到:{my_str_list},类型是:{type(my_str_list)}")
字符串的规整操作(去前后空格):
**语法:**字符串.strip()
代码展示:
my_str = " happy new year "
print(my_str.strip())
print(my_str.strip())
字符串的规整操作(去前后指定字符串):
**语法:**字符串.strip(字符串)
代码展示:
my_str = "12happy new year122"
print(my_str)
print(my_str.strip("12"))
注意:传入的"12"其实是:“1” 和"2"都会移除,是按照单个字符;
字符串统计出现次数:
代码展示:
my_str = "happy new year year year happy"
count = my_str.count("pp")
print(f"字符串{my_str}中pp出现的次数为:{count}")
字符串总长度:
代码展示:
my_str = "happy new year"
length = len(my_str)
print(length)