千家信息网

Python中str的常用命令有哪些

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,这篇文章主要介绍了Python中str的常用命令有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。str 字符串例如:name =
千家信息网最后更新 2024年11月28日Python中str的常用命令有哪些

这篇文章主要介绍了Python中str的常用命令有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    str 字符串

    例如:

    name = "adam"
    name1 = "周大福"

    命令语句的条件参数配置格式

    center(self,width,fillchar= None)

    self:可以直接忽略

    width:必须有参数

    fillchar= None:可以不用单独设置参数

    凡有参数 = None的 都可以理解为 可以不用单独设置此参数

    str 里有一些常用的命令

    1、capitalize

    首字母大写

    name = "adam"v = name.capitalize() #name内的字符串首字母大写print(type(v),v)

    2、casefold和lower

    所有变小写

    name = "aDam"v = name.casefold()   #name内的字符串变成小写(它可以处理不同的语种内的字母大小写)print(type(v),v)name = "aDam"v2 = name.lower()     #name内的字符串变成小写(它只能处理英文)print(type(v2),v2)

    3、center

    设置字符串长度并将内容剧中,空白位置进行填充并且何可设置填充的符号默认填充空格

    name = "adam"v = name.center(25,"+")             #在name赋值的字符串的前后各增加加号 ,使得整体字符串占一共有8个字符之前name的赋值字符串剧中,并且赋值给vprint(type(v),v)

    4、count

    寻找字符串中的子序列或字符出现的次数,并可以设置起始的寻找位数

    name = "adam"v = name.count('a',2,4) #计算a在name赋值的字符串内 出现过多少次,不写(,2,4)的话默认是冲头到位找,写了就是从地2到4位寻找print (v)

    5、endswith和startswith

    endswith 判断结尾的字符是什么 可以设置 起始位置

    startswith 判断开头的字符是什么 可以设置 起始位置 注意设置的开始位置要前移一个单位

    name = "adam"v = name.endswith('d',1,2) #判断 name赋值的字符串 从第一个字符到第二个字符结束 结尾的字母是不是dv1 = name.startswith('a',0,2)#判断name赋值的字符串,从第0位到第2位 是不是以 字母a开头print (v)print (v1)

    6、expandtabs

    将\t 前面字符位数用空格补至x位 ,如\t 前字符位数等于x 则 直接用x个空格替换\t 如\t前字符位数大于x 则在前面字符最末尾补x余数个空格(输出结果不再显示\t)

    test = '12345\t6789'v = test.expandtabs(8)v1 = test.expandtabs(3)v2 = test.expandtabs(5)print(v)print(v1)print(v2)#应用实例:test = '姓名\t性别\t身高\n张三\t男\t180\n张三\t男\t180\n张三\t男\t180'v = test.expandtabs(10)print(v)

    7、find

    从头往后找到第一个子序列获取其前面有多少个字符,也可以规定寻找范围,设定的搜索范围逻辑关系位 起始位数 <= 被搜索范围 <结束位置。

    name = "adamadamadam"   #创建变量name并赋值adamadamadamv = name.find('ma',6,9)  #设定搜索ma子序列从6到8位print (v)  #显示v的值#结果为:7

    PS:当find找不到目标子序列的时候会赋值位-1而另一个寻找命令index在找不到目标子序列时会直接程序报错,所以推荐使用find命令

    8、format

    格式化,将一个字符串中的占位符替换为指定的值"大括号内的就是占位符"

    name = "adam"       #创建变量name并赋值为adamxingBie = "男"       #创建变量xingBie并赋值为"男"xianShi = "I am {name1},{xingBie1}"  #创建变量xianShi并赋值为"I am {name1},{xingBie1}" print(xianShi)  #显示xianShi#结果:I am {name1},{xingBie1}v = xianShi.format(name1 = name ,xingBie1 = xingBie) #使用变量name和xingBie替换xianShi变量中的name1和xingBie1,并且赋值给vprint(v)        #显示v#结果:I am adam,男

    format的另一种书写格式,可以使用数字占位,并且在赋值的时候程序会默认依次对数字赋值,创建占位符号时需要从0开始使用数字占位

    name = "adam"  #创建变量name并赋值为adamxingBie = "男"       #创建变量xingBie并赋值为"男"xianShi = "I am {0},{1}" #创建变量xianShi并赋值为"I am {0},{1}"print(xianShi)  #显示xianShi#结果:I am {0},{1}v1 = xianShi.format(name ,xingBie) #使用变量name 和 xingBie的值替换xianShi中的 0 和 1的值,并且赋值给v1print(v1) #显示v1#结果:I am adam,男

    9、format_map

    (字典)。。。。。

    name = "adam"    #创建变量name并赋值为adamxingBie = "男"       #创建变量xingBie并赋值为"男"xianShi = "I am {name1},{xingBie1}"  #创建变量xianShi并赋值为"I am {name1},{xingBie1}" print(xianShi)  #显示xianShiv = xianShi.format(name1 = name ,xingBie1 = xingBie) #使用变量name和xingBie替换xianShi变量中的name1和xingBie1,并且赋值给vprint(v)        #显示v#结果:I am adam,男v1 = xianShi.format_map({'name1':name,'xingBie1':xingBie})    #使用format_map的格式给v1赋值print(v1)       #显示v1#结果:I am adam,男

    10、isalnum

    判断字符串中是否只有字母 或 数字,输出布尔值

    name = 'adam123'   #给变量name赋值adamname1 = 'adam+'   #给name1赋值adam+name2 = 'adam'name3 = '123'v = name.isalnum()   #判断name中是否只含有字母或数字,并把布尔值赋值给vv1 = name1.isalnum()    #判断name1中是否只含有字母或数字,并把布尔值赋值给v1v2 = name2.isalnum()v3 = name3.isalnum()print(v)print(v1)print(v2)print(v3)

    11、isalpha

    判断字符串中是否只含有字母 或 汉字,输出布尔值

    name = 'adam123'   #给变量name赋值adam123name1 = 'adam+'   #给name1赋值adam+name2 = 'adam'   #给name2赋值adamname3 = '张三'    #给name3赋值张三v = name.isalpha()v1 = name1.isalpha()v2 = name2.isalpha()v3 = name3.isalpha()print(v)print(v1)print(v2)print(v3)

    12、isdecimal、isdigit、isnumeric

    他们时用来判断字符串是否只是数字输出布尔值

    isdecimal :只能判断阿拉伯数字为 真 (推荐用这个比较准)

    isdigit:阿拉伯数字和符号数"123和③" 为真

    isnumeric:阿拉伯数字、符号数字、罗马数字、汉字数,均为真"123、③、Ⅲ、四"

    test1 =  '123'  #赋值test2 = '1a'    #这个也可以是16进制数test3 = '②'    #符号数字 ②test4 = 'Ⅲ' #罗马数字3,这是一个字符test5 = '四'    #汉字数字四vecimal1 = test1.isdecimal()    #判断字符串是否为数字vecimal2 = test2.isdecimal()vecimal3 = test3.isdecimal()vecimal4 = test4.isdecimal()vecimal5 = test5.isdecimal()vigit1 = test1.isdigit()    #判断字符串是否为数字vigit2 = test2.isdigit()vigit3 = test3.isdigit()vigit4 = test4.isdigit()vigit5 = test5.isdigit()vnumeric1 = test1.isnumeric()vnumeric2 = test2.isnumeric()vnumeric3 = test3.isnumeric()vnumeric4 = test4.isnumeric()vnumeric5 = test5.isnumeric()print(vecimal1, vecimal2, vecimal3, vecimal4, vecimal5)  #打印isdecimal判断的结果print(vigit1, vigit2, vigit3, vigit4, vigit5)  #打印isdigit判断的结果print(vnumeric1, vnumeric2, vnumeric3, vnumeric4, vnumeric5)

    13、isidentifier

    测试字符串是不是以 字母数字下划线组成并且不以字母或下划线开头

    PS:这个命令不会因为 字符串是python的关键字 就判断为假

    print( "if".isidentifier() )print( "def".isidentifier() )print( "class".isidentifier() )print( "_a".isidentifier() )print( "中国123a".isidentifier() )print( "123".isidentifier() )print( "3a".isidentifier() )print( "".isidentifier() )

    14、islower、lower、isupper、upper

    islower 判断字符串是否全部为小写

    lower 把字符串内所有字符所有字符变成小写

    isupper 判断字符串是否全部为大写

    upper 把字符串内所有字符所有字符变成大写

    name = 'Adam'name1 = 'ADAM'name2 = 'adaM'name3 = 'aDam'v = name.islower()v1 = name1.islower()v2 = name2.islower()v3 = name3.islower()print('Adam',v,'ADAM',v1,'adaM',v2,'aDam',v3)x = name.lower()x1 = name1.lower()x2 = name2.lower()x3 = name3.lower()print('Adam',x,'ADAM',x1,'adaM',x2,'aDam',x3)n = name.isupper()n1 = name1.isupper()n2 = name2.isupper()n3 = name3.isupper()print('Adam',n,'ADAM',n1,'adaM',n2,'aDam',n3)k = name.upper()k1 = name1.upper()k2 = name2.upper()k3 = name3.upper()print('Adam',k,'ADAM',k1,'adaM',k2,'aDam',k3)

    15、isprintable

    判断字符串中是否含有不可见或不可打印的 字符比如 \n \t 等

    print('\tabc'.isprintable())print('abc\n'.isprintable())print('\tabc\n'.isprintable())print('abc'.isprintable())

    16、isspace

    判断字符串是否全部都是空格

    test = '  'test1 = '  a'test2 = ' a 'test3 = ''v = test.isspace()v1 = test1.isspace()v2 = test2.isspace()v3 = test3.isspace()print(v,v1,v2,v3)    #True False False False

    17、istitle、title

    istitle 判断是否为标题(所有单词首字母均为大写)

    title 将字符串转换成标题也就是把所有字母的 首字母转换成大写

    test = 'wo shi zhang san , wo ba sui le 'v = test.istitle()print(v)    #Falsev1 = test.title()print(v1)    #Wo Shi Zhang San , Wo Ba Sui Le v2 = v1.istitle()print(v2)    #True

    18、join

    在字符与字符 中间加上 设置好的间隔符当变量值中只有一个字符的时候则什么都不做,可以设置添加的符号

    test = '我是张三,我八岁了'test1 = '我'print(test) #我是张三,我八岁了x = ' 'v = x.join(test)print(v)    #我 是 张 三 , 我 八 岁 了v1 = x.join(test1)print(v1)    #我

    19、ljus、rjust、center、zfill

    ljust 字符串靠左对齐 不够位数的用设置的字符补齐

    rjust 字符串靠右对齐 不够位数的用设置的字符补齐

    center 字符串剧中对齐 不够位数的用设置的字符补齐,如果只需要补1个字符,则补在字符串左侧

    zfill 只能在字符串左侧填充0

    name = 'adam'v = name.ljust(6,'*') #文字左对齐 不至6位用*补位v1 = name.rjust(6,'*') #文字右对齐 不至6位用*补位v2 = name.center(6,'*')  #文字剧中 不至6位用*补位v3 = name.zfill(6)    #文字右对齐 不至6位用*补位print(v,v1,v2,v3)  #adam** **adam *adam* 00adam

    20、lstrip 、rstrip、strip

    lstrip 从左向右匹配删除空格,直到遇到不匹配的那个字符

    rstrip 从右向左匹配删除空格,直到遇到不匹配的那个字符

    strip 去掉两侧的空格

    PS:他们还可以去掉 /t /n这样的功能符(默认下),还可以指定去掉任意字符,匹配原则是 优先最多匹配原则

    name = ' ad am 'v = name.lstrip()     #去掉左侧的空格直到遇到其他字符v1 = name.rstrip()    #去掉右侧的空格直到遇到其他字符v2 = name.strip()     #去掉两侧的空格直到遇到其他字符print(v)    #ad am print(v1)   # ad amprint(v2)   #ad am

    21、translate、maketrans

    translate:执行映射转换

    maketrans:创建映射转换关系,先写入原字符表,再写入要转换成的字符表,也可以再定义一个需要删除的字符表

    yuanZiFu = 'abcde'      #定义原始匹配字符bianGengZiFu = '12345'        #定义匹配后变更的字符     shanChuZiFu = 'fghij'  #定义原始匹配删除的字符zhuanHuanBiao = str.maketrans(yuanZiFu,bianGengZiFu)  #创建字符映射转换表(匹配yuanZiFu转换成bianGengZiFu)zhuanHuanShanChuBiao = str.maketrans(yuanZiFu,bianGengZiFu,shanChuZiFu)       #创建字符映射转换删除表(匹配yuanZiFu转换成bianGengZiFu删除shanChuZiFu)yuanShiZiFuChuan = 'a1b2c3d4e5fagbhcidje'        #创建原始字符串print(yuanShiZiFuChuan.translate(zhuanHuanBiao))    #1122334455f1g2h4i4j5print(yuanShiZiFuChuan.translate(zhuanHuanShanChuBiao))    #112233445512345

    22、partition、rpartition、split、rsplit、splitlines() 、splitlines(True) 、splitlines(Fales)

    partition 把字符串分割为3份 从字符串的左侧向右寻找 设置的分隔符号 进行分割,分割符号会被单独分割成中间的那部分

    rpartition 把字符串分割为3份 从字符串的右侧向左寻找 设置的分隔符号 进行分割,分割符号会被单独分割成中间的那部分

    ps partitionrpartition需要设置分割符

    split 可以指定分割的块数 左侧向右寻找分割符号 默认是匹配的所有分割符号 全部都进行分割 且分割符号并不会出现在结果中

    rsplit 可以指定分割的块数 右侧向左寻找分割符号 默认是匹配的所有分割符号 全部都进行分割 且分割符号并不会出现在结果中

    ps:分割符默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。

    splitlines() 默认根据换行符号\n 进行分割 且不会保留换行符号

    splitlines(True) 根据换行符号\n 进行分割 且保留换行符号 换行符号出现在被分割模块的右侧splitlines(Fales) 根据换行符号\n 进行分割 且不会保留换行符号

    x1 = '123\n45\t123\n45\t123\n45\t123\n45'print(x1.partition('5'))    #('123\n4', '5', '\t123\n45\t123\n45\t123\n45')print(x1.rpartition('5'))   #('123\n45\t123\n45\t123\n45\t123\n4', '5', '')print(x1.split('\n',3))   #['123', '45\t123', '45\t123', '45\t123\n45']print(x1.rsplit('\t',2))  #['123\n45\t123\n45', '123\n45', '123\n45']print(x1.splitlines())  #['123', '45\t123', '45\t123', '45\t123', '45']print(x1.splitlines(True))  #['123\n', '45\t123\n', '45\t123\n', '45\t123\n', '45']print(x1.splitlines(False)) #['123', '45\t123', '45\t123', '45\t123', '45']

    23、swapcase

    大小写转换 ,把字符串里面的大小写全部转换

    name = 'Adam'v = name.swapcase()print(v)    #aDAM

    24、replace

    替换,从左往右寻找匹配的子序列,然后全部进行替换,可以设定替换几个,("原变量中的子序列","替换后的子序列",替换几个子序列)

    name = 'adamadamadam'v = name.replace('da','yyy')print(v)    #ayyymayyymayyym

    感谢你能够认真阅读完这篇文章,希望小编分享的"Python中str的常用命令有哪些"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

    字符 字符串 变量 数字 符号 字母 空格 结果 序列 位数 命令 换行符 张三 大写 位置 参数 小写 布尔 剧中 右侧 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器增加一个网络映射 出租手头服务器的方法 大专计算机网络技术找工作 沈阳专业软件开发多少钱 魔域H5服务器架设 云海服务器管理中心 腾讯云怎么找到自己买的服务器 浪潮服务器噪音标准 皮书数据库包含哪些内容 科技助力创新互联网调解模式 本地dns服务器 村里网络安全宣传周宣传活动 服务器能不能做硬盘录像机 网络安全法 贯彻 浙江专业软件开发多少钱 计算网络技术的应用ppt 炽热狙击无法使用服务器 图书馆数据库怎么用 计算机软件服务器网络设备 幼儿园网络安全的舞蹈 专升本数据库技术视频 华中数控软件开发面试经验 网络安全应急演练宣传标语 腾讯云怎么找到自己买的服务器 江苏智能软件开发生产厂家 信用卡上报数据库是什么意思 数据库运维工具市场 医药数字化转型网络安全管理 ipran网络技术架构 英雄联盟选择服务器html代码
    0