04-3数据类型-字符串

字符串的表现形式

  • 非原始字符串
    - 使用单引号包含的'abc'
    - 使用双引号包含的"abc"
    - 使用3个单引号''' abc '''
    - 使用3个双引号""" abc """

  • 原始字符串
    - 使用单引号包含的r'abc'
    - 使用双引号包含的r"abc"
    - 使用三个单引号r''' abc '''
    - 使用3个双引号r""" abc """

              概念补充
          ------转义符
         -------通过转换某个指定的字符, 使它具备特殊的含义
    
  • 常见转义符
    - \(在行尾时) 续行符
    - \’ 单引号
    - \" 双引号
    - \n 换行
    - \t 横向制表符

     各个形式的特点:
         - 混合使用可以避免使用引号转义符
      	 - 一般内容需要写成一行,若要跨行,需要使用连行符\
      		例1:name = "s \
                         	z"
      		例2:使用小括号
      				name = ("s"
                  "z")
          - 三引号
      	       可以直接跨行书写
    

字符串一般操作

  • 字符串拼接
    方式1:str1 + str2
    方式2str1str2
    方式3”xxx%sxxx“%(a+b)
    方式4字符串乘法

  • 字符串切片

    • 概念
      ------获取一个字符串的某个片段

    • 获取某一个字符
      - name[下标]

      • 下标:字符串中每个字符对应的编号
        注意 下标越界 负数下标 如果为负数, 则会从尾部开始定位 最后一个字符为 -1
    • 获取一个字符串片段
      - name[起始:结束:步长]

      注意
      ---获取范围:[起始, 结束)  起始包含
      					     结束不包含
      ---默认值:起始默认值: 0
      		  结束默认值: len(name)整个字符串的长度
      ---步长默认值: 1
         获取顺序
      	- 步长 > 0,从左边到右
      	- 步长 < 0,从右往左
      	注意:  **不能从头部跳到尾部, 或者从尾部跳到头部**
      

特殊------ 反转字符串, 字符串[::-1]

字符串函数操作

使用方式

  • 内建函数, 直接使用
len
作用: - 计算字符串的字符个数
语法: - len(name)
参数: - 字符串
返回值: - 字符个数(整形)
  • 对象方法:对象.方法(参数)

查找类

find

作用: - 查找子串索引(下标)位置
语法: - find(sub, start=0, end=len(str))
返回值: - 找到了—指定索引-(整型)

  注意
  		从左到右进行查找
  		找到后立即停止
rfind

功能使用, 同find
区别: 从右往左进行查找

index

作用: - 获取子串索引位置
语法: - index(sub, start=0, end=len(str))
返回值: - 找到了—指定索引(整型)
------------找不到返回-异常

  	注意
  		从左到右进行查找
  		找到后立即停止
rindex

功能使用, 同index
区别: 从右往左进行查找

count

作用: - 计算某个子字符串的出现个数
语法: - count(sub, start=0, end=len(str))
返回值: - 子字符串出现的个数(整型)

转换类

replace

作用: - 使用给定的新字符串 替换原字符串中的 旧字符串
语法: - replace(old, new[, count])
返回值: - 替换后的结果字符串

  	注意: 并不会修改原字符串本身
capitalize

作用: - 将字符串首字母变为大写
语法: - capitalize()
返回值: - 首字符大写后的新字符串

  	注意: 并不会修改原字符串本身
title

作用: - 将字符串每个单词的首字母变为大写
语法: - title()
返回值: - 每个单词首字符大写后的新字符串

  	注意: 并不会修改原字符串本身
lower

作用: - 将字符串每个字符都变为小写
语法: - title()
返回值: - 全部变为小写后的新字符串

  	注意: 并不会修改原字符串本身
upper

作用: - 将字符串每个字符都变为大写
语法: - upper()
返回值: - 全部变为大写后的新字符串

  	注意: 并不会修改原字符串本身

填充类

ljust

作用: - 根据指定字符(1个), 将原字符串填充够指定长度
l: - 表示原字符串靠左
语法: - ljust(width, fillchar)
返回值: - 填充完毕的结果字符串

  	注意
  		不会修改原字符串
  		填充字符的长度为1
  		只有原字符串长度 < 指定结果长度时才会填充
rjust

作用: - 根据指定字符(1个), 将原字符串填充够指定长度
r: - 表示原字符串靠右
语法: - rjust(width, fillchar)
返回值: - 填充完毕的结果字符串

center

根据指定字符(1个), 将原字符串填充够指定长度
center: - 表示原字符串居中
语法: - center(width, fillchar)
返回值: - 填充完毕的结果字符串

		注意
			不会修改原字符串
			填充字符的长度为1
			只有原字符串长度 < 指定结果长度时才会填充

压缩类

lstrip

作用: - 移除所有原字符串指定字符(默认为空白字符)
l: - 表示仅仅只移除左侧
语法: - lstrip(chars)
返回值: - 移除完毕的结果字符串

  	注意
  		不会修改原字符串
rstrip

作用: - 移除所有原字符串指定字符(默认为空白字符)
r: - 表示仅仅只移除右侧
语法: - rstrip(chars)
返回值: - 移除完毕的结果字符串

  	注意
  		不会修改原字符串

分割拼接类

split

作用: - 将一个大的字符串分割成几个子字符串
语法: - split(sep, maxsplit)
返回值: - 分割后的子字符串, 组成的(列表)

  	注意
  		并不会修改原字符串本身
partition

作用: - 根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
语法: - partition(sep)
返回值: - 找到了—(分隔符左侧内容, 分隔符, 分隔符右侧内容)(元组)
------------找不到返回-(原字符串, “”, “”)(元组)

  	注意
  		不会修改原字符串
  		从左侧开始查找分隔符
rpartition

作用: - 根据指定的分隔符, 返回(分隔符左侧内容, 分隔符, 分隔符右侧内容)
r: - 表示从右侧开始查找分隔符
语法: - partition(sep)
返回值: - 找到了—(分隔符左侧内容, 分隔符, 分隔符右侧内容)(元组)
------------找不到返回-(原字符串, “”, “”)(元组)

  	注意
  		不会修改原字符串
  		从右侧开始查找分隔符
splitlines

作用: - 按照换行符(\r, \n), 将字符串拆成多个元素, 保存到列表中
语法: - splitlines(keepends)
参数: - 参数-keepends(是否保留换行符)(bool类型)
返回值: - 被换行符分割的多个字符串,(列表)

  	注意
  		不会修改原字符串
join

作用: - 根据指定字符串, 将给定的可迭代对象(能用for循环遍历的), 进行拼接, 得到拼接后的字符串
语法: - join(iterable)
返回值: - 拼接好的新字符串

判定类

isalpha

作用: - 字符串中是否所有的字符都是字母
至少有一个字符
语法: - isalpha()
返回值: - 是否全是字母(bool)

isdigit

作用: - 字符串中是否所有的字符都是数字
至少有一个字符
语法: - isdigit()
返回值: - 是否全是数字(bool)

isalnum

作用: - 字符串中是否所有的字符都是数字或者字母
至少有一个字符
语法: - isalnum()
返回值: - 是否全是字母或数字(bool)

isspace

作用: - 字符串中是否所有的字符都是空白符
包括空格,缩进,换行等不可见转义符
至少有一个字符
语法: - isspace()
返回值: - 是否全是空白符(bool)

startswith

作用: - 判定一个字符串是否以某个前缀开头
语法: - startswith(prefix, start=0, end=len(str))
返回值: - 是否以指定前缀开头(bool)

endswith

作用: - 判定一个字符串是否以某个后缀结尾
语法: - endswith(suffix, start=0, end=len(str))
返回值: - 是否以指定后缀结尾(bool)

  补充
  	in
  		判定一个字符串, 是否被另外一个字符串包含
  	not in
  		判定一个字符串, 是否不被另外一个字符串包含

猜你喜欢

转载自blog.csdn.net/smartcongge/article/details/82805748