python:字符串类型

Posted Aloys Wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python:字符串类型相关的知识,希望对你有一定的参考价值。

字符串概念

字符串:由单个字符组成的一个序列,

字符串是一个不可变的类型

形式:

  • 非原始字符串:
    • 单引号:单引号包起来的一段字符就是字符串
    • 双引号:和单引号一样
    • 三引号:三引号包括的字符串可以换行,保留所有空白字符(三个单引号或者三个双引号)
      • 可以用于文档字符串,注释在函数或者类等结构下,可以用help函数进行打印
  • 原始字符串:在非原始字符串前面加一个r前缀
    • 不进行字符串的转义

转义字符

常用的转义字符

  • :换行符
  • :制表符
  • ":单引号,双引号
  • \:打印出 本身

续行符

用在行尾,表示这一行还没写完,把下一行接上来,

注意,如果要作为续行使用,则 后面不能再接任何东西

如果是两个字符串要换行,可以分成两个字符串书写,并使用小括号进行包裹

字符串的拼接

  1. 使用 + 连接符:s1 + s2

  2. 也可以直接把两个字符串放在一起:"xxx" "yyy",可以有多个空格,但是不能换行

  3. 使用字符串模板,然后用其他字符串进行填充

字符串的重复

S * n:字符串S重复n次

索引与切片操作

索引

  • 从左到右:0, 1, 2, 3, 4, .....
  • 从右到左:-1, -2, .......

可以通过 字符串[索引] 访问字符串中的单个字符

注意:字符串是非可变类型,不能修改字符串中的字符

总结:

  • 如果n为非负数:s[n] 相当于 第 n+1 个值
  • 如果n为负数:s[n] 相当于:s[len(s) + n]

切片操作

s[ 起始索引 : 结束索引 : 步长 ]

说明:

  • 范围:[起始, 结束)
  • 默认值:起始0, 结束-1, 步长1
  • 顺序:步长大于0则从左到右,步长小于0则从右到左
    • 注意,不能从头部跳到尾部,或者从尾部跳到头部

例子:

  • 反转字符串:s[::-1]

包含关系

  • in:一个字符串,是否被另一个字符串包含
  • not in:一个字符串,是否不被另一个字符串包含

字符串的长度

len(x) :内建函数len可以求序列类型的长度

常用的字符串函数

查找计算类

find

用于查找子串索引位置,从左到右查找,找到后立即停止

语法:find(sub, start=0, end=len(s))
参数:

  • 1.要检索的字符串
    1. 检索的起始位置,默认为0
    1. 检索的结束位置,默认为最后

返回值:

  • 如果找到了,返回第一个子串的索引
  • 如果没找到,返回 -1

rfind

和find一样,区别是从右到左进行查找

index

代表获取的意思

和find几乎一样,不过找不到会报错

rindex

和index一样,区别是从右到左进行查找

count

计算字符串中某个子字符串出现的次数

语法:count(sub, start=0, end=len(s))

返回值是子字符串出现的次数

转换类

replace

功能:字符串替换

语法:replace(old, new[, count])

参数:

  • 需要替换的内容
  • 用来替换的内容
  • 替换的次数,省略则表示全部替换

返回值:返回替换后的结果字符串

注意:不会改变原始字符串本身的内容

capitalize

将字符串首字母变为大写,返回改变后的结果

title

将字符串中每个单词的首字母变成大写

返回改变后的字符串

lower

将字符串全部变为小写

返回改变后的字符串

upper

将字符串全部变为大写

返回改变后的字符串

填压缩类

ljust

功能:根据指定字符(一个)在字符串左边进行填充,填充到指定长度

语法:ljust(width, fillchar)

参数:

  • width:指定结果字符串的长度
  • fillchar:用来填充的字符

注意:

  • 填充字符长度为1
  • 只有原字符串长度 小于 指定长度时 才会进行填充

rjust

同 ljust,不过是在字符串右边进行填充

center

在字符串两边进行填充

lstrip

功能:移除原字符串指定字符,左边(默认移除 空白 字符)

语法:lstrip(chars)

参数:chars,表示需要移除的字符串

表现形式为:"abc", 表示移除a或b或c,注意:不是移除 abc

rstrip

同 lstrip,不过是移除右边的字符串

分隔拼接类

split

将一个字符串分割成几个子字符串

语法:split(sep, maxsplit)

参数:

  • sep:分隔符
  • maxsplit:最大分割 次数,省略表示有多少分割多少

返回值:分割后的子字符串组成的列表

partition

从左边开始查找分割符
根据指定的分割符,返回分割符左边的内容,分割符,分割符右边的内容

语法:partition(sep)

返回值:

  • 如果查找到分割符:(分割符左侧, 分割符, 分割符右侧)
  • 如果没有查找到分割符:(原字符串, "", "")

rpartition

同lpartition,不过是从右边开始查找分割符

splitlines

按照换行符进行分割,把字符串拆分成多个字符串,放到列表中

join

根据指定字符串,将给定的可迭代对象,进行拼接,得到拼接后的字符串

语法:s.join(iterable)

s作为分割符,将iterable中的每个元素通过s进行拼接组合

判定类

isalpha

判断是否是字母

isdigit

判断是否是数字

isalnum

判断是否是字母或者数字

isspace

判断是否是空白字符

startswith

判断是否以某字符串开始

endswith

判断是否以某字符串结尾

以上是关于python:字符串类型的主要内容,如果未能解决你的问题,请参考以下文章

Python代码阅读(第25篇):将多行字符串拆分成列表

在python 3.6中处理自定义编码时遇到类型错误

vs code 自定义代码片段

VSCode创建自定义用户片段

Python学习总结

JavaScript笔试题(js高级代码片段)