字符串:被 ' ' ," " ,""" """ 修饰的数据
name1 = 'name'
name2 = "name"
name3 = """ 我是帅逼
超级帅的那种! """ # 注释 可作字符串 不会改变原有的格式
访问字符串中的值
Python中字符串的下标
str[index]
可以正向也可以逆向 正向从0开始 逆向从-1开始
a = 'hellopython'
print(a[5]) # p
print(a[-6]) # p
Python中字符串的切片
和range()函数一样,也遵循左闭右开
步长默认为1
开始默认为0
结束是开区间
a = "hellopython"
print(a[-4:-1:-1]) # 步长方向与起始方向不同,所以取不到值
字符串常用操作方法:
查找字符串中的子串
# 字符串序列.find(子串,开始位置下标,结束位置下标)
var = 'hello and python and hello world'
print(var.find('and')) # 查找到and首字母下标返回字串
print(var.find('and',8,20)) # 查找索引范围8到20里的and返回字串
print(var.find('ars')) # find查找不到ars返回-1,若是index()方法则报错
# rfind()与rindex()是从右往左查找
查找字符串中子串出现的次数
# 查找 字符串 中 子串 出现的次数
str1 = "hello worlld"
print(str1.count("ll")) # 返回 2
# 查找某一数据出现的次数 列表与字符串的 count()函数 一样
li = [1,2,3,4,5,6,7,[1,2,3,4,5,6,7]]
print(li.count(1)) # 查找1出现了多少次,返回1次
字符串的修改
# 对字符串当中的内容进行修改
# 字符串序列.replace(旧子串,新子串,替换次数)
var = "hello and python and hello world"
var = var.replace("and","和")
print(var) # 将里面所有and替换为和
print(var.replace("和","and",1)) # 将和替换为and,只替换一次
# 注意:替换次数如果超出子串出现次数,则替换次数为该子串出现次数
print(var) # 原来的字符串并没有被改变,因为字符串是不可变数据类型
字符串的分割
# 字符串的分割
var = "hello and python and hello world"
var = var.split("and") # 以and作为分隔符,返回一个列表
print(var)
字符串的连接
# 字符串的连接
# 'sep'.join(iterable)
# iterable为可迭代对象
a = '123456789'
a = '_'.join(a) # 以_作为连接符
print(a)
#注意:join()是处理字符串的方法
字符串的删除
# 删除两侧字符串
var = " hello and python and hello world "
print(var.strip()) # 默认删除两侧空格
var2 = "@hello and python@ and¥ hello world@@@@"
print(var2.strip("@"))
# 全部处理用replace()
print(var2.replace("@","").replace("¥",""))
# 更全面的则用 正则表达式 来操作
isxxxx() # 这样的方法即自省 返回True或False
其它字符串操作函数,自行了解!
字符串运算(粗略表示)
+ 字符串的拼接符、
[] 索引、
r"" 转义失效区间、
[::] 切片、
not in 判断子串是否在字符串中