博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python课堂整理3---字符串魔法
阅读量:5239 次
发布时间:2019-06-14

本文共 3510 字,大约阅读时间需要 11 分钟。

字符串魔法

1.首字母大写功能

test = "alex"v = test.capitalize()print(v)

2.所有变小写(casefold更厉害,可以将很多未知的其他国家字符变小写)

test = "ALex"v1 = test.casefold()print(v1)v2 = test.lower()print(v2)

3.设置宽度,并将内容居中,20代指总长度,*为空白位置填充一个字符,可有可无。

test = "alex"v = test.center(20, "*")print(v)

4.统计某字符出现的次数,可以设置起始和结束位置,可以不设置

test = "alexalexr"v = test.count('ex',5,8)print(v)

5.判断以什么什么结尾或开始,也可以指定起始和结束位置

test = "alex"v1 = test.endswith('x')v2 = test.startswith('b')print(v1)print(v2)

6.以下面代码为例,从a开始数16个为一组,遇到/t,则由/t用空格补齐剩下的数量(补齐16个),默认是8个为一组。

 

test = "alex\tdabai"v = test.expandtabs(16)print(v)

 

7.从开始往后找,找到第一个后,获取其位置,找不到的话返回 -1,可以指定起始和结束位置

test = "alexalex"v1 = test.find("ex")v2 = test.find("ex", 5, 7)print(v1)print(v2)

8.格式化,将字符串中的占位符替换为指定的值

test1 = "i am {name}"print(test1)v1 = test1.format(name = 'alex')print(v1)test2 = "i am {0},age{1}"print(test2)v2 = test2.format('Iro man',35)print(v2)

 

 

9.和8效果一样,传入的值为字典类型

test = "i am {name},age{a}"v = test.format_map({"name":"Iro man", "a":35})print(v)

10.和find功能一样,但是找不到会报错,可忽略,建议用find

test = "alexalex"v1 = test.index("ex")print(v1)v2 = test.index('8')print(v2)

11.判断字符串是否只包含字母和数字,有别的字符会报False

test1 = "asdfhisa123"test2 = "wdsf24_@$s2_^"v1 = test1.isalnum()v2 = test2.isalnum()print(v1)print(v2)

12.判断是否都为字母,汉字。

 

test = "sdfq大白"v= test.isalpha()print(v)

 

13.判断是否都为数字,而 isdigit更厉害,②也能识别。isnumeric,能识别中文的“二”

test1 = "123"test2 = "②"test3 = "二"v1 = test1.isdecimal()v2 = test2.isdigit()v3 = test3.isnumeric()print(v1,v2,v3)

14.判断是否为标识符(标识符:字母,数字,下划线,且不能是数字开头)

test1 = "_123asd"test2 = "3434"v1 = test1.isidentifier()v2 = test2.isidentifier()print(v1, v2)

15.判断是否存在不可显示的字符(\n换行符,\t制表符),存在的话返回False

test = "dada\nsdasdf"v = test.isprintable()print(v)

16.判断是否全部是空格

test = "   "v = test.isspace()print(v)

17.判断是否为标题(标题的每个单词的首字母都是大写)

 

test = "wo xi huan da Bai"v = test.istitle()print(v)

18.将字符串转换为标题(首字母大写)

test = "wo xi huan da Bai"v = test.title()print(v)

19.将字符中的每一个元素按照指定分隔符进行拼接

test = "你是风儿我是沙"v = "_".join(test)print(v)

20.左边内容,右边填充指定符号,或右边内容,左边填充。

test = "alex"v1 = test.ljust(20, "*")v2 = test.rjust(20, "❤")print(v1)print(v2)

21.判断是否是小写,以及全部转换为小写。

 

test = "Alex"v1 = test.islower()v2 = test.lower()print(v1, v2)

22.判断是否都为大写,以及全部转换大写。

test = "Alex"v1 = test.isupper()v2 = test.upper()print(v1, v2)

23.去除左边空格,去除右边空格,以及去除左右空格,还可以去除\t和\n,还可以去除指定内容,采用优先最多匹配原则,只要里面包含的字符都可以一一匹配去除

test1 = "  alex  "v1 = test1.lstrip()v2 = test1.rstrip()v3 = test1.strip()print(v1,"\n",v2,"\n",v3)test2 = "xalex"v = test2.lstrip("lax")    #此处也可用rstrip和stripprint(v)

24.对应替换(test1和test2一一对应,把v中和test1相同的字符换成test2中的)

v = "天青色等烟雨而我在等你"test1 = "天青色等烟雨"test2 = "炊烟袅袅升起"m = str.maketrans(test1,test2)new_v = v.translate(m)print(new_v)

25.分割,split的缺点是不能保留被分割元素

test = "天青色等烟雨而我在等你等你"v = test.partition('等')   #从匹配到的第一个就分割,分割成三份print(v)v2 = test.rpartition('等')  #从右边开始匹配,也是分割三部分print(v2)v3 = test.split('等')  #全部分割print(v3)v4 = test.split('等',2) #指定分割2次print(v4)v5 = test.rsplit('等',2) #从右边开始匹配分割2次print(v5)

26.只能根据换行符分割,True 和False 决定是否保留换行

est = "天青色\n等烟雨\n而我在等你"v = test.splitlines()print(v)v2 = test.splitlines(True)print(v2)

27.替换

test = "天青色等烟雨而我在等你"

v = test.replace("等", "想")
v2 = test.replace("等", "想", 1)    #替换第一个
print(v)
print(v2)

七个重要的基本魔法,join, find, split, strip, upper, lower, replace,全都标记了星星哦

灰魔法

1.用索引获取字符串中的某一字符

 

test = "天青色等烟雨而我在等你"v = test[0]print(v)

 

2.切片操作

test = "天青色等烟雨而我在等你"v = test[0:2]print(v)

3.获取字符串长度

test = "天青色等烟雨而我在等你"v = len(test)print(v)

4.for循环

test = "我想你了"for i in test:    print(i)

谨记:字符串在内存中一旦创建,就无法修改,每次修改,都会在内存中重新创建一次(因为内存中存储的东西都是连续的)

 

转载于:https://www.cnblogs.com/dabai123/p/10926035.html

你可能感兴趣的文章
ZOJ 1666 G-Square Coins
查看>>
CodeForces Round #545 Div.2
查看>>
卷积中的参数
查看>>
Linux中Zabbix4.0的搭建
查看>>
《LoadRunner没有告诉你的》之六——获取有效的性能需求
查看>>
51nod1076 (边双连通)
查看>>
Item 9: Avoid Conversion Operators in Your APIs(Effective C#)
查看>>
js去除空格
查看>>
学习Spring Boot:(二十八)Spring Security 权限认证
查看>>
IT学习神器——慕课网App获App Store、Android应用市场重磅推荐
查看>>
Linux网络状态工具ss命令使用详解
查看>>
深入浅出JavaScript(2)—ECMAScript
查看>>
编程珠玑第十一章----排序
查看>>
Face The Right Way POJ - 3276 (开关问题)
查看>>
STEP2——《数据分析:企业的贤内助》重点摘要笔记(六)——数据描述
查看>>
变量的命名规范
查看>>
手机端自动跳转
查看>>
react中进入某个详情页URL路劲参数Id获取问题
查看>>
首届.NET Core开源峰会
查看>>
ViewPager的onPageChangeListener里面的一些方法参数:
查看>>