-->

python基础知识(六)---字符串①

目录

前言

一、字符串的驻留

 二、字符串的常用操作方法

1.判断字符串的方法

2.字符串的查询操作

3.字符串的大小写转换方法

4.字符串内容对其的方法

5.字符串分割的方法

6.字符串的替换与合并

三、结论


前言

字符串是python的基本数据类型,是一个不可变的字符序列。字符串说的简单点就是用英文的单引号和双引号将字母,数字等括起来,这就形成了一个字符串。接下来看下字符串内容。

一、字符串的驻留

字符串的驻留其实就是在一个驻留池中仅保存一份相同且不可变字符串,如果后续创建的字符串和旧的字符串相同,则不会开辟新空间,而是把旧的字符串的地址赋给新创建的变量。

以下是字符串驻留的几种情况:

  • 字符串的长度为0或1时,会采用驻留机制
    a="a"
    b="a"
    print(a is b)

    运行结果

  • 符合标识符的字符串(大小写字母,数字,下划线)

    a="abcd_5"
    b="abcd_5"
    print(a is b)

     运行结果

  • 字符串只在编译时进行驻留,而不是运行时

    a="a"+"b"
    b="a"
    c="b"
    print(a is "ab")
    print(b+c is "ab")

    运行结果

  • 【-5,256】之间的整数数字
  • sys中的intern方法可以强制2个字符串指向同一个对象

注意:pycharm软件对字符串进行了优化处理,所以只要你的字符串一样,显示的都是True

 二、字符串的常用操作方法

1.判断字符串的方法

  • isidentifier()     #判断指定的字符串是否是合法的标识符
  • isspace()     #判断指定的字符串是否全部由空白符组成
  • isalpha()     #判断指定的字符串是否全部为字母组成
  • isdecimal()    #判断指定的字符串是否全部由十进制的数字组成
  • isnumeric()     #判断指定的字符串是否全部由数字组成
  • isalnum     #判断指定的字符串是否全部由字母和数字组成
    a="hellopython"
    b="31415926"
    print(a.isidentifier(),a.isspace(),a.isalpha())
    print(b.isdecimal(),b.isnumeric(),b.isalnum())

    运行结果

2.字符串的查询操作

  • index()     #查找子串第一次出现的位置,如果查找的子串不存在,则返回Value Error
  • rindex()    #查找子串最后一次出现的位置,如果查找的子串不存在,则返回Value Error
  • find()    #查找子串第一次出现的位置,如果查找的子串不存在时,则返回-1
  • rfind()    #查找子串最后一次出现的位置,如果查找的子串不存在时,则返回-1
    a="0123456789python"
    print(a.index("p"),a.rindex("y"),a.find("p"),a.rfind("哈哈"))

    运行结果

3.字符串的大小写转换方法

  • upper()   #把字符串中所有字符都转成大写字母
  • lower()   #把字符串中所有字符都转成小写字母
  • swapcase()   #把字符串中所有大写字母转成小写,小写的转成大写
  • capitalize()   把第一个字符转成大写,其余字符转成小写
  • title()    把每个单词的第一个字符转成大写,把每个单词剩余的字符转成小写
    a="hello PYTHON"
    print(a.upper(),"---",a.lower(),"---",a.swapcase(),"---",a.capitalize(),"---",a.title())

    运行结果

注意:转成大小写后,会产生一个新的字符串对象。

4.字符串内容对其的方法

  • center(宽度,填充符)   #居中对齐
  • ljust(宽度,填充符)   #左对齐
  • rjust(宽度,填充符)   #右对齐
  • zfill(宽度)   #右对齐 ,左边用0填充
    a="abc"
    print(a.center(5,"-"),a.ljust(5,"~"),a.rjust(5,"+"),a.zfill(5))

    运行结果

说明:如果指定的宽度小于字符串的长度,则返回字符串本身

5.字符串分割的方法

  • split()   #无参数时,从左边开始以空格作为分割;或者指定字符参数进行分割;亦或者还可以指定最大的分割次数。
  • rsplit()   ##无参数时,从右边开始以空格作为分割;或者指定字符参数进行分割;亦或者还可以指定最大的分割次数。
    a="h,w a p d"
    print(a.split(),a.split("w"))
    print(a.rsplit(),a.rsplit("w"))

    运行结果

6.字符串的替换与合并

  • replace()     #字符串的替换replace(旧字符,新字符)或者(旧字符,新字符,最大替换次数)
  • join()    #将列表或者元组中的字符串合并成一个字符串
    a="hello,world"
    b=["n","i",'h','a','o']
    print(a.replace('world','python'))
    print("分隔符".join(b))

    运行结果

三、结论

        以上是关于字符串的一些介绍和操作方法 (未完)

posted @ 2022-09-13 21:10  密发渐消  阅读(22)  评论(0编辑  收藏  举报