首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python3 String(字符串)

Python3 String(字符串)

作者头像
用户7886150
修改2021-01-11 10:16:34
修改2021-01-11 10:16:34
7740
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Python 3字符串| expandtabs

2. String(字符串) 

 定义:单引号或双引号中的数据 

  由数字、字母、下划线组成。一对引号字符串三引号字符串  字符串拼接 

  print(a,b)print(a+’,’+b)  下标和切片: 

   正数下标 

    字符串中从左到右每个元素 分配的从0开始的编号,最后一个下标为长度(len)-1  负数下标 

     字符串中从右往左每个元素分配的从-1开始的标号.最后一个下标为负的长度-len  str[-4:-1] 

      负数下标依然是从左到右的顺序打印的  str[-2:-5] 

      下标顺序错误,不会打印任何数据   切片 

     字符串序列 [ 开始位置下标:结束位置下标:步长 ]  str[:] 

      冒号左边是开始下标冒号右边是结束下标不写步长,步长默认为1  str[:3] 

      不写开始下标,默认开始下标为0  str[1:] 

      不写结束下标,默认结束下标为最后一位下标   字符串截取 

    Python字符串从左至右截取:索引范围(0,长度-1),从右至左截取(-1,字符串开头)。 1切片截取时不包含结束下标的元素  字符串的反转 

    str[: : -1]字符串倒叙输出   字符串的常见操作 

   4.1字符串查找 

     find() 

       检测某个子串是否包含在字符串中,如果在, 返回这个子串开始位置的下标,否则返回-1  语法: 

        字符串序列.find(‘要查找的子串’,开始位置下标,结束位置下标)   rfind() 

      和find()功能相同,但查找反向为右侧开始  index() 

       检测某个子串是否包含在这个字符串中,如果, 返回这个字符串开始的位置下标,否则则报异常  语法: 

        字符串序列.index(子串,开始位置下标,结束位置下标)   findex() 

      和index()功能相同,但查找方向从右侧开始  count() 

       返回某个子串在字符串中出现的次数  语法 

        字符串序列.count(子串,开始位置下标,结束位置下标)    4.2字符串修改 

     replace() 

       替换子串  字符串序列.replace(‘旧子串’,‘新子串’,替换次数) 

        不指定替换次数, 会替换所有   split() 

       按照指定字符分割字符串  语法 

         字符串序列.split(‘指定分割字符’,num) 

          注意:num表示的是分割字符出现的次数,即将来返回数据个数为num+1个。  示例 

          mystr = “hello world and itcast and itheima and Python” print(mystr.split(‘and’))      

# 结果:['hello world ', ' itcast ', ' itheima ', ' Python']

print(mystr.split('and', 2))

# 结果:['hello world ', ' itcast ', ' itheima and Python']

print(mystr.split(' '))

# 结果:['hello', 'world', 'and', 'itcast', 'and', 'itheima', 'and', 'Python']

print(mystr.split(' ', 2))

# 结果:['hello', 'world', 'and itcast and itheima and Python']

    - join()

        - ⽤一个字符或子串合并字符串,即是将多个字符串合并为⼀个新的字符串。

        - 以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串

        - join: 根据指定数据把容器类型中的每一个数据按照字符串进行拼接,返回一个新的字符串

        - 语法

            - 字符或⼦串.join(多字符串串组成的序列列)

        - 示例

            - list1 = ['chuan', 'zhi', 'bo', 'ke']

t1 = ('aa', 'b', 'cc', 'ddd')

print('_'.join(list1))

```python 

# 结果:chuan_zhi_bo_ke

print('...'.join(t1))

# 结果:aa...b...cc...ddd

    - capitalize()

        - 将字符串第一个字符转换成大写。

        - 注意:capitalize()函数转换后,只字符串串第⼀一个字符⼤大写,其他的字符全都⼩小写。

    - title()

        - 将字符串每个单词⾸字母转换成大写。

    - lower()

        - 将字符串中大写转小写

    - upper()

        - 将字符串中小写转大写

    - lstrip()

        - 删除字符串左侧空白字符。

    - rstrip()

        - 删除字符串右侧空白字符.

    - strip()

        - 删除字符串两侧空白字符.

    - ljust()

        - 返回一个源字符串左对齐,并使用指定字符(默认风格)填充至对应长度的新字符串

        - 语法

            - 字符串序列.ljust(长度,填充字符)

    - rjust()

        - 返回⼀个原字符串右对齐,并使用指定字符(默认空格)填充至对应长度 的新字符串,语法和

ljust()相同。 

    - string.swapcase()

        - 翻转 string 中的大小写

    - string.partition(str)

        -   # 10. partition表示根据指定数据把字符串分割成三部分

        - 有点像 find()和 split()的结合体,从 str 出现的第一个位置起,把 字 符 串 string 分 成 一 个 3 元 素 的 元 组 (string_pre_str,str,string_post_str),如果 string 中不包含str 则 string_pre_str == string.

    - string.rpartition(str)

        - 类似于 partition()函数,不过是从右边开始查找.

        -  # 11. rpartition表示根据指定数据从右往左找指定的数据把字符串分割成三部分

- 4.3字符串判断

    - startswith()

        - 检查字符串是否以指定子串开头,是则返回True,否则返回False,如果设置开始和结束下标,则在指定范围内检查.

        - 语法

            - 字符串序列.startswith(子串,开始位置下标,结束位置下标)

    - endswith()

        - 检查字符串是否以指定子串结尾,是则返回True,否则返回False.如果设置开始和结束下标,则在指定范围内检查.

        - 语法

            - 字符串序列.endswith(子串,开始位置下标,结束位置下标)

    - string.istitle()

        - 判断首字母是否为大写,是大写返回 True,否则返回 False

    - isalpha()

        - 判断所有字符都是字母,为真返回 Ture,否则返回 False

    - isdigit()

        - 判断所有字符串只包含数字则返回True,否则返回False

    - isalnum()

        - 判断所有字符都是数字或者字母,为真

返回 Ture,否则返回 False。 

    - isspace()

        - 判断字符串是否都是空格(空白),

为真则返回True,否则返回False. 

    - string.isdecimal()

        - 如果 string 只包含十进制数字则返回 True 否则返回 False.

        - isdecimal()方法检查字符串是否只包含十进制字符。这种方法只存在于unicode对象。

    - string.isupper()

        - 判断字符串是否全部大写,

为真则返回 True,否则返回 False 

    - string.islower()

        - 判断字符串是否全部小写,

为真则返回 True,否则返回 False 

    - string.isnumeric()

        - 如果 string 中只包含数字字符,则返回 True,否则返回 False

- 字符串格式化

    - string.format()

        - 格式化字符串

    - center()

        - 返回一个原字符串剧中对齐,并使用字符(默认空格)填充至对应长度的新字符串,语法和ljust()相同

        - 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

        - str.center(100,'填充的符号')

            - 100为填充数量

            - 不写填充符号默认为空格

    - string.decode(encoding='UTF-8', errors='strict')

        - 以 encoding 指定的编码格式解码 string,如果出错默认报一个 ValueError 的 异 常 , 除 非 errors 指 定 的 是 'ignore' 或 者'replace'

    - string.encode(encoding='UTF-8', errors='strict')

        - 以 encoding 指定的编码格式编码 string,如果出错默认报一个ValueError 的异常,除非 errors 指定的是'ignore'或者'replace'

    - string.expandtabs(tabsize=8)

        - 把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8。

    - string.maketrans(intab, outtab])

        - maketrans() 方法用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。

    - string.splitlines([keepends])

        - 按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。

    - string.translate(str, del="")

        - 根据 str 给出的表(包含 256 个字符)转换 string 的字符,要过滤掉的字符放到 del 参数中

    - string.zfill(width)

        - 返回长度为 width 的字符串,原字符串 string 右对齐,前面填充0

- 生成字符串

    - string.ascii_letters

        - 生成所有字母,从a-z和A-Z

    - string.digits

        - 生成所有数字0-9

- 获取字符串长度

    - len(字符串)

- 返回字符串 str 中最大的字母

    - max(str)

- 返回字符串 str 中最小的字母

    - min(str)

 python转义字符 

   (在行尾时) 

    续行符  \ 

    反斜杠符号  ’ 

    单引号  " 

    双引号  \a 

    响铃  \b 

    退格(Backspace)  \e 

    转义  \000 

    空  \n 

    换行  \v 

    纵向制表符  \t 

    横向制表符  \r 

    回车  \f 

    换页  \oyy 

    八进制数,yy代表的字符,例如\o 12代表换行  \xyy 

    十六进制数,yy代表的字符,例如\x0a 代表换行  \other 

    其他的字符以普通格式输出   字符串运算符 

     字符串连接 

      a+b输出结果:hellopython   

     重复输出字符串 

      a*2输出结果,hellohello   [] 

     通过索引获取字符串中字符 

      a[1]输出结果e   [:] 

     截取字符串中的一部分 

      a[1:4] 输出结果ell   in 

     成员运算符:-如果字符串中包含给定的字符返回True 

      H in a 输出结果 1   not in 

     成员运算符,- 如果字符串中不包含给定的字符返回True 

      M not a 输出结果1   r/R 

     原始字符串-原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符,原始字符串除在字符串的第一个引号前加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法. 

      print r’\n’ prints \n 和 print R’\n’ prints \n   % 

     格式字符串 

      请看下一行内容.    str和tuple是不可变类型,修改需要重新赋值

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档