Python---字符串操作

字符串一般操作
    字符串拼接
        方式1
            str1 + str2
            
        方式2
            str1str2
                直接把两个字符串放一块
    
        方式3
            ”xxx%sxxx“%(a+b)
        方式4
            字符串乘法
            "abc" * 3
                "abcabcabc"

# 字符串拼接
# 方式1
n = "woshi" + "god"
n1 =  "woshigod"
print(n)
print(n1)
# 方式2
n2 = "woshi" "god"
print(n2)
# 方式3
n3 = "woshi%s"%"god"
print(n3)
# 方式4
n4 = "abcd" * 4
print(n4)


    字符串切片
        概念
            获取一个字符串的某个片段
        获取某一个字符
            name[下标]
            下标
                字符串中每个字符的编号
                    座位编号
                注意
                    下标越界
                    负数下标
                        如果为负数, 则会从尾部开始定位
                        最后一个字符为 -1
        获取一个字符串片段
            name[起始:结束:步长]
            注意
                获取范围
                    [起始, 结束)
                        起始包含
                        结束不包含
                默认值
                    起始默认值: 0
                    结束默认值: len(name)
                        整个字符串的长度
                    步长默认值: 1
                获取顺序
                    步长 > 0
                        从左边到右
                    步长 < 0
                        从右往左
                    注意: 不能从头部跳到尾部, 或者从尾部跳到头部
            特殊案例
                反转字符串
                字符串[::-1]

# 字符串切片
n = "werdfspace"
# 获取下标字母
print(n[0])
# 带起终点位置
print(n[4:8:2])
# 反转
print(n[len(n):0:-1])


字符串函数操作
    
   字符串函数操作
    使用方式
        小旗子的代表是内建函数, 直接使用
        不带小旗子的属于对象方法
            对象.方法(参数)
    len
        作用
            计算字符串的字符个数
        语法
            len(name)
        参数
            字符串
        返回值
            整型
            字符个数
    find
        作用
            查找子串索引位置
        语法
            find(sub, start=0, end=len(str))
        参数
            参数1-sub
                需要检索的字符串
            参数2-start
                检索的起始位置
                可省略, 默认0
            参数3-end
                检索的结束位置
                可省略, 默认len(str)
        返回值
            找到了
                指定索引
                整型
            找不到
                -1
        注意
            从左到右进行查找
            找到后立即停止
    rfind
        功能使用, 同find
        区别
            从右往左进行查找
    index
        作用
            获取子串索引位置
        语法
            index(sub, start=0, end=len(str))
        参数
            参数1-sub
                需要检索的字符串
            参数2-start
                检索的起始位置
                可省略, 默认0
            参数3-end
                检索的结束位置
                可省略, 默认len(str)
        返回值
            找到了
                指定索引
                整型
            找不到
                异常
        注意
            从左到右进行查找
            找到后立即停止
    rindex
        功能使用, 同index
        区别
            从右往左进行查找
    count
        作用
            计算某个子字符串的出现个数
        语法
            count(sub, start=0, end=len(str))
        参数
            参数1-sub
                需要检索的字符串
            参数2-start
                检索的起始位置
                可省略, 默认0
            参数3-end
                检索的结束位置
                可省略, 默认len(str)
        返回值
            子字符串出现的个数
            整型
    replace
        作用
            使用给定的新字符串 替换原字符串中的 旧字符串
        语法
            replace(old, new[, count])
        参数
            参数1-old
                需要被替换的旧字符串
            参数2-new
                替换后的新字符串
            参数3-count
                替换的个数
                可省略, 表示替换全部
        返回值
            替换后的结果字符串
        注意
            并不会修改原字符串本身

# 查找计算
n = "wo ai zhong guo"
# len
# 	作用
# 		计算字符串的字符个数
# 	语法
# 		len(name)
# 	参数
# 		字符串
# 	返回值
# 		整型
# 		字符个数
print(len(n))
# find
# 	作用
# 		查找子串索引位置
# 	语法
# 		find(sub, start=0, end=len(str))
# 	参数
# 		参数1-sub
# 			需要检索的字符串
# 		参数2-start
# 			检索的起始位置
# 			可省略, 默认0
# 		参数3-end
# 			检索的结束位置
# 			可省略, 默认len(str)
# 	返回值
# 		找到了
# 			指定索引
# 			整型
# 		找不到
# 			-1
# 	注意
# 		从左到右进行查找
# 		找到后立即停止
print(n.find("ai",0,len(n)))
# rfind
# 	功能使用, 同find
# 	区别
# 		从右往左进行查找
print(n.rfind("ai",0,len(n)))

# index
# 	作用
# 		获取子串索引位置
# 	语法
# 		index(sub, start=0, end=len(str))
# 	参数
# 		参数1-sub
# 			需要检索的字符串
# 		参数2-start
# 			检索的起始位置
# 			可省略, 默认0
# 		参数3-end
# 			检索的结束位置
# 			可省略, 默认len(str)
# 	返回值
# 		找到了
# 			指定索引
# 			整型
# 		找不到
# 			异常
# 	注意
# 		从左到右进行查找
# 		找到后立即停止
print(n.index("wo",0,len(n)))

# rindex
# 	功能使用, 同index
# 	区别
# 		从右往左进行查找
print(n.rindex("guo",0,len(n)))

# count
# 	作用
# 		计算某个子字符串的出现个数
# 	语法
# 		count(sub, start=0, end=len(str))
# 	参数
# 		参数1-sub
# 			需要检索的字符串
# 		参数2-start
# 			检索的起始位置
# 			可省略, 默认0
# 		参数3-end
# 			检索的结束位置
# 			可省略, 默认len(str)
# 	返回值
# 		子字符串出现的个数
# 		 整型
m = "hahahahhahhahhahahhahahh"
print(m.count("ha"))


    capitalize
        作用
            将字符串首字母变为大写
        语法
            capitalize()
        参数
            无
        返回值
            首字符大写后的新字符串
        注意
            并不会修改原字符串本身
    title
        作用
            将字符串每个单词的首字母变为大写
        语法
            title()
        参数
            无
        返回值
            每个单词首字符大写后的新字符串
        注意
            并不会修改原字符串本身
    lower
        作用
            将字符串每个字符都变为小写
        语法
            title()
        参数
            无
        返回值
            全部变为小写后的新字符串
        注意
            并不会修改原字符串本身
    upper
        作用
            将字符串每个字符都变为大写
        语法
            upper()
        参数
            无
        返回值
            全部变为大写后的新字符串
        注意
            并不会修改原字符串本身

# 转换
# replace
# 	作用
# 		使用给定的新字符串 替换原字符串中的 旧字符串
# 	语法
# 		replace(old, new[, count])
# 	参数
# 		参数1-old
# 			需要被替换的旧字符串
# 		参数2-new
# 			替换后的新字符串
# 		参数3-count
# 			替换的个数
# 			可省略, 表示替换全部
# 	返回值
# 		替换后的结果字符串
# 	注意
# 		并不会修改原字符串本身
n = "hahahhhahahhahah"
print(n.replace("ha","lj"))
# capitalize
# 	作用
# 		将字符串首字母变为大写
# 	语法
# 		capitalize()
# 	参数
# 		无
# 	返回值
# 		首字符大写后的新字符串
# 	注意
# 		并不会修改原字符串本身
print(n.capitalize())
# title
# 	作用
# 		将字符串每个单词的首字母变为大写
# 	语法
# 		title()
# 	参数
# 		无
# 	返回值
# 		每个单词首字符大写后的新字符串
# 	注意
# 		并不会修改原字符串本身"
m = "wo ai zhong guo"
print(m.title())
# lower
# 	作用
# 		将字符串每个字符都变为小写
# 	语法
# 		title()
# 	参数
# 		无
# 	返回值
# 		全部变为小写后的新字符串
# 	注意
# 		并不会修改原字符串本身
N = "NIMEN ZUI BANG"
print(N.lower())
# upper
# 	作用
# 		将字符串每个字符都变为大写
# 	语法
# 		upper()
# 	参数
# 		无
# 	返回值
# 		全部变为大写后的新字符串
# 	注意
# 		并不会修改原始字符串
u = "xiao xie"
print(u.upper())


    ljust
        作用
            根据指定字符(1个), 将原字符串填充够指定长度
            l
                表示原字符串靠左
        语法
            ljust(width, fillchar)
        参数
            参数1-width
                指定结果字符串的长度
            参数2-fillchar
                如果原字符串长度 < 指定长度时
                填充过去的字符
        返回值
            填充完毕的结果字符串
        注意
            不会修改原字符串
            填充字符的长度为1
            只有原字符串长度 < 指定结果长度时才会填充
    rjust
        作用
            根据指定字符(1个), 将原字符串填充够指定长度
            r
                表示原字符串靠右
        语法
            rjust(width, fillchar)
        参数
            参数1-width
                指定结果字符串的长度
            参数2-fillchar
                如果原字符串长度 < 指定长度时
                填充过去的字符
        返回值
            填充完毕的结果字符串
        注意
            不会修改原字符串
            填充字符的长度为1
            只有原字符串长度 < 指定结果长度时才会填充
    center
        作用
            根据指定字符(1个), 将原字符串填充够指定长度
            center
                表示原字符串居中
        语法
            center(width, fillchar)
        参数
            参数1-width
                指定结果字符串的长度
            参数2-fillchar
                如果原字符串长度 < 指定长度时
                填充过去的字符
        返回值
            填充完毕的结果字符串
        注意
            不会修改原字符串
            填充字符的长度为1
            只有原字符串长度 < 指定结果长度时才会填充
    lstrip
        作用
            移除所有原字符串指定字符(默认为空白字符)
            l
                表示从左侧开始移除
        语法
            lstrip(chars)
        参数
            参数-chars
                需要移除的字符集
                表现形式为字符串
                    "abc"
                    表示,"a"|"b"|"c"
        返回值
            移除完毕的结果字符串
        注意
            不会修改原字符串
    rstrip
        作用
            移除所有原字符串指定字符(默认为空白字符)
            r
                表示从右侧开始移除
        语法
            rstrip(chars)
        参数
            参数-chars
                需要移除的字符集
                表现形式为字符串
                    "abc"
                    表示,"a"|"b"|"c"
        返回值
            移除完毕的结果字符串
        注意
            不会修改原字符串

# 填充压缩
# ljust
# 	作用
# 		根据指定字符(1个), 将原字符串填充够指定长度
# 		l
# 			表示原字符串靠左
# 	语法
# 		ljust(width, fillchar)
# 	参数
# 		参数1-width
# 			指定结果字符串的长度
# 		参数2-fillchar
# 			如果原字符串长度 < 指定长度时
# 			填充过去的字符
# 	返回值
# 		填充完毕的结果字符串
# 	注意
# 		不会修改原字符串
# 		填充字符的长度为1
# 		只有原字符串长度 < 指定结果长度时才会填充
n = "xyz"
print(n.ljust(7,"t"))
# rjust
# 	作用
# 		根据指定字符(1个), 将原字符串填充够指定长度
# 		r
# 			表示原字符串靠右
# 	语法
# 		rjust(width, fillchar)
# 	参数
# 		参数1-width
# 			指定结果字符串的长度
# 		参数2-fillchar
# 			如果原字符串长度 < 指定长度时
# 			填充过去的字符
# 	返回值
# 		填充完毕的结果字符串
# 	注意
# 		不会修改原字符串
# 		填充字符的长度为1
# 		只有原字符串长度 < 指定结果长度时才会填充
m = "xyz"
print(m.rjust(7,"t"))
# center
# 	作用
# 		根据指定字符(1个), 将原字符串填充够指定长度
# 		center
# 			表示原字符串居中
# 	语法
# 		center(width, fillchar)
# 	参数
# 		参数1-width
# 			指定结果字符串的长度
# 		参数2-fillchar
# 			如果原字符串长度 < 指定长度时
# 			填充过去的字符
# 	返回值
# 		填充完毕的结果字符串
# 	注意
# 		不会修改原字符串
# 		填充字符的长度为1
# 		只有原字符串长度 < 指定结果长度时才会填充
x = "xyz"
print(x.center(7,"t"))
# lstrip
# 	作用
# 		移除所有原字符串指定字符(默认为空白字符)
# 		l
# 			表示从左侧开始移除
# 	语法
# 		lstrip(chars)
# 	参数
# 		参数-chars
# 			需要移除的字符集
# 			表现形式为字符串
# 				"abc"
# 				表示,"a"|"b"|"c"
# 	返回值
# 		移除完毕的结果字符串
# 	注意
# 		不会修改原字符串
stripl = "kongbai zou yi chu"
print(stripl.lstrip("ko"))
# rstrip
# 	作用
# 		移除所有原字符串指定字符(默认为空白字符)
# 		r
# 			表示从右侧开始移除
# 	语法
# 		rstrip(chars)
# 	参数
# 		参数-chars
# 			需要移除的字符集
# 			表现形式为字符串
# 				"abc"
# 				表示,"a"|"b"|"c"
# 	返回值
# 		移除完毕的结果字符串
# 	注意
# 		不会修改原字符串
stripl = "kongbai zou yi chu"
print(stripl.rstrip("u"))


    split
        作用
            将一个大的字符串分割成几个子字符串
        语法
            split(sep, maxsplit)
        参数
            参数1-sep
                分隔符
            参数2-maxsplit
                最大的分割次数
                可省略, 有多少分割多少
        返回值
            分割后的子字符串, 组成的列表
            list 列表类型
        注意
            并不会修改原字符串本身
    partition
        作用
            根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
        语法
            partition(sep)
        参数
            参数-sep
                分隔符
        返回值
            如果查找到分隔符
                (分隔符左侧内容, 分隔符, 分隔符右侧内容)
                tuple 类型
            如果没有查找到分隔符
                (原字符串, "", "")
                tuple 类型
        注意
            不会修改原字符串
            从左侧开始查找分隔符
    rpartition
        作用
            根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
            r
                表示从右侧开始查找分隔符
        语法
            partition(sep)
        参数
            参数-sep
                分隔符
        返回值
            如果查找到分隔符
                (分隔符左侧内容, 分隔符, 分隔符右侧内容)
                tuple 类型
            如果没有查找到分隔符
                (原字符串, "", "")
                tuple 类型
        注意
            不会修改原字符串
            从右侧开始查找分隔符
    splitlines
        作用
            按照换行符(\r, \n), 将字符串拆成多个元素, 保存到列表中
        语法
            splitlines(keepends)
        参数
            参数-keepends
                是否保留换行符
                bool 类型
        返回值
            被换行符分割的多个字符串, 作为元素组成的列表
            list 类型
        注意
            不会修改原字符串
    join
        作用
            根据指定字符串, 将给定的可迭代对象, 进行拼接, 得到拼接后的字符串
        语法
            join(iterable)
        参数
            iterable
                可迭代的对象
                    字符串
                    元组
                    列表
                    ...
        返回值
            拼接好的新字符串

# 分割拼接
# split
# 	作用
# 		将一个大的字符串分割成几个子字符串
# 	语法
# 		split(sep, maxsplit)
# 	参数
# 		参数1-sep
# 			分隔符
# 		参数2-maxsplit
# 			最大的分割次数
# 			可省略, 有多少分割多少
# 	返回值
# 		分割后的子字符串, 组成的列表
# 		list 列表类型
# 	注意
# 		并不会修改原字符串本身
information = "wang-176-65-010"
print(information.split("-"))
# partition
# 	作用
# 		根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
# 	语法
# 		partition(sep)
# 	参数
# 		参数-sep
# 			分隔符
# 	返回值
# 		如果查找到分隔符
# 			(分隔符左侧内容, 分隔符, 分隔符右侧内容)
# 			tuple 类型
# 		如果没有查找到分隔符
# 			(原字符串, "", "")
# 			tuple 类型
# 	注意
# 		不会修改原字符串
# 		从左侧开始查找分隔符
print(information.partition("-"))
# rpartition
# 	作用
# 		根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
# 		r
# 			表示从右侧开始查找分隔符
# 	语法
# 		partition(sep)
# 	参数
# 		参数-sep
# 			分隔符
# 	返回值
# 		如果查找到分隔符
# 			(分隔符左侧内容, 分隔符, 分隔符右侧内容)
# 			tuple 类型
# 		如果没有查找到分隔符
# 			(原字符串, "", "")
# 			tuple 类型
# 	注意
# 		不会修改原字符串
# 		从右侧开始查找分隔符
print(information.rpartition("-"))
# splitlines
# 	作用
# 		按照换行符(\r, \n), 将字符串拆成多个元素, 保存到列表中
# 	语法
# 		splitlines(keepends)
# 	参数
# 		参数-keepends
# 			是否保留换行符
# 			bool 类型
# 	返回值
# 		被换行符分割的多个字符串, 作为元素组成的列表
# 		list 类型
# 	注意
# 		不会修改原字符串
lizi = "wo \n shi \r god"
print(lizi.splitlines())
# join
# 	作用
# 		根据指定字符串, 将给定的可迭代对象, 进行拼接, 得到拼接后的字符串
# 	语法
# 		join(iterable)
# 	参数
# 		iterable
# 			可迭代的对象
# 				字符串
# 				元组
# 				列表
# 				...
# 	返回值
# 		拼接好的新字符串
elems = ["wo", "shi", "god", "or", "dog"]
result = "-".join(elems)
print(result)


    isalpha
        作用
            字符串中是否所有的字符都是字母
                不包含该数字,特殊符号,标点符号等等
                至少有一个字符
        语法
            isalpha()
        参数
            无
        返回值
            是否全是字母
            bool 类型
    isdigit
        作用
            字符串中是否所有的字符都是数字
                不包含该字母,特殊符号,标点符号等等
                至少有一个字符
        语法
            isdigit()
        参数
            无
        返回值
            是否全是数字
            bool 类型
    isalnum
        作用
            字符串中是否所有的字符都是数字或者字母
                不包含该特殊符号,标点符号等等
                至少有一个字符
        语法
            isalnum()
        参数
            无
        返回值
            是否全是数字或者字母
            bool 类型
    isspace
        作用
            字符串中是否所有的字符都是空白符
                包括空格,缩进,换行等不可见转义符
                至少有一个字符
        语法
            isspace()
        参数
            无
        返回值
            是否全是空白符
            bool 类型
    startswith
        作用
            判定一个字符串是否以某个前缀开头
        语法
            startswith(prefix, start=0, end=len(str))
        参数
            参数1-prefix
                需要判定的前缀字符串
            参数2-start
                判定起始位置
            参数3-end
                判定结束位置
        返回值
            是否以指定前缀开头
            bool 类型
    endswith
        作用
            判定一个字符串是否以某个后缀结尾
        语法
            endswith(suffix, start=0, end=len(str))
        参数
            参数1-suffix
                需要判定的后缀字符串
            参数2-start
                判定起始位置
            参数3-end
                判定结束位置
        返回值
            是否以指定后缀结尾
            bool 类型
    补充
        in
            判定一个字符串, 是否被另外一个字符串包含
        not in
            判定一个字符串, 是否不被另外一个字符串包含
  

# 判定
# isalpha
# 	作用
# 		字符串中是否所有的字符都是字母
# 			不包含该数字,特殊符号,标点符号等等
# 			至少有一个字符
# 	语法
# 		isalpha()
# 	参数
# 		无
# 	返回值
# 		是否全是字母
# 		bool 类型
zimu = "zimu"
print(zimu.isalpha())
# isdigit
# 	作用
# 		字符串中是否所有的字符都是数字
# 			不包含该字母,特殊符号,标点符号等等
# 			至少有一个字符
# 	语法
# 		isdigit()
# 	参数
# 		无
# 	返回值
# 		是否全是数字
# 		bool 类型
shuzi = "123456789"
print(shuzi.isdigit())
# isalnum
# 	作用
# 		字符串中是否所有的字符都是数字或者字母
# 			不包含该特殊符号,标点符号等等
# 			至少有一个字符
# 	语法
# 		isalnum()
# 	参数
# 		无
# 	返回值
# 		是否全是数字或者字母
# 		bool 类型
zimushuzi = "abc123"
print(zimushuzi.isalnum())
# isspace
# 	作用
# 		字符串中是否所有的字符都是空白符
# 			包括空格,缩进,换行等不可见转义符
# 			至少有一个字符
# 	语法
# 		isspace()
# 	参数
# 		无
# 	返回值
# 		是否全是空白符
# 		bool 类型
space = "   "
print(space.isspace())
# startswith
# 	作用
# 		判定一个字符串是否以某个前缀开头
# 	语法
# 		startswith(prefix, start=0, end=len(str))
# 	参数
# 		参数1-prefix
# 			需要判定的前缀字符串
# 		参数2-start
# 			判定起始位置
# 		参数3-end
# 			判定结束位置
# 	返回值
# 		是否以指定前缀开头
# 		bool 类型
filename = "2022-08-07 zhuanghaun.doc"
print(filename.startswith("2022"))
# endswith
# 	作用
# 		判定一个字符串是否以某个后缀结尾
# 	语法
# 		endswith(suffix, start=0, end=len(str))
# 	参数
# 		参数1-suffix
# 			需要判定的后缀字符串
# 		参数2-start
# 			判定起始位置
# 		参数3-end
# 			判定结束位置
# 	返回值
# 		是否以指定后缀结尾
# 		bool 类型
print(filename.endswith(".doc"))
# 补充
# 	in
# 		判定一个字符串, 是否被另外一个字符串包含
# 	not in
# 		判定一个字符串, 是否不被另外一个字符串包含
print("xiao" in "ni shi da xiao zi")
print("xiao" not in "ni shi da xiao zi")

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值