这篇文章主要知识点是关于python、字符串、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书
String(字符串):
定义和创建字符串:
定义:字符串是一个有序的字符的集合,用于存储和表示基本的文本信息。
注意:字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内
var1='Hello World!' print (var1)
对应操作:
1,“*”重复输出字符串
print('Hello World'*2)
2,"[]","[:]" 通过索引获取字符串中字符,这里和列表的切片操作是相同的
print('Hello World'[2: ])
3, "in" 成员运算符 如果字符串中包含给定字符返回 True
print('el' in 'Hello World')
4,"%"格式字符串
print('alex is a good teacher') print('%s is a good teacher' %'alex')
5,"+" 字符串拼接
a ='123' b='abc' c=a+b print(c)
注:“+”效率低,改用 join
c=''.join([a,b]) print(c)
字符串常用方法:
字符串的替换、删除、截取、复制、连接、比较、查找、分割
#capitalize:首字母大写,其他字母小写
s='asf sgs SD dfs ASdf' print(s.capitalize()) >>Asf sgs sd dfs asdf
#lower() 转换为小写
#upper() 转换为大写
#swapase() 大小写互换
a='hello word' print(a.upper()) b='HELLO WORD' print(b.lower()) c='hello WORD' print(c.swapcase()) >>HELLO WORD >>hello word >>HELLO word
#s.strip():删除字符串两边的指定字符,默认为空值
s=' hello ' b=s.strip() print(b) >>hello
#s.lstrip():删除字符串左边的指定字符,
#s.rstrip():删除字符串左边的指定字符,
s=' hello ' b=s.ltrip() c=s.rtrip() print(b) print(c) >>hello >> hello
#复制字符串
a='hello' b=a*2 print(b) >>hellohello
#连接2个字符串str.join
a='hello' b='123' a.join(b) print(a.join(b)) >>1hello2hello3
#查找字符串str.index;str.find功能相同。
区别在于index查找不到,报错。find查找不到返回‘-1’.两个找到,都返回第一个找的的位置
a='hello word' print(a.index('w')) print(a.find('a')) >>6 >>-1
#判断是否包含指定字符串‘in’,‘not in’
a='hello word' print('hello' in a) print('hello' not in a) >>True >>False
#查看字符串的长度 len
a='hello word' print(len (a)) >>10
#srt.centen 将字符串放入中心位置可指定长度以及位置两边字符
a='chen zheng' print(a.center(20,"*")) >>*****chen zheng*****
#str.count() 统计字符串出现的次数 a='hello word' print(a.count('l')) >>2
# S='prefix123aaasuffix' print(S.startswith('prefix')) #是否以prefix开头 print(S.endswith('suffix')) #以suffix结尾 print(S.isalnum()) #是否全是字母和数字,并至少有一个字符 print(S.isalpha()) #是否全是字母,并至少有一个字符 print(S.isdigit()) #是否全是数字,并至少有一个字符 print(S.isspace()) #是否全是空白字符,并至少有一个字符 print(S.islower()) #S中的字母是否全是小写 print(S.isupper()) #S中的字母是否便是大写 print(S.istitle()) #S是否是首字母大写的
以上就是python中字符串的操作方法总结(代码示例)的详细内容,更多请关注码农之家其它相关文章!
以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。
Copyright 2018-2020 www.xz577.com 码农之家
版权投诉 / 书籍推广 / 赞助:520161757@qq.com
详解Python3中字符串中的数字提取方法
逛到一个有意思的博客在里面看到一篇关于ValueError: invalid literal for int() with base 10错误的解析,针对这个错误,博主已经给出解决办法,使用的是re.sub 方法 totalCount = '100abc' totalCount = re.sub("\D", "", totalCount) 但是没有说明什么含义,于是去查了其他的资料,做一下记录: 在Python3.5.2 官方文档re模块中sub函数的定义是: re.sub(pattern, repl, string, count=0, flags=0) 在字符串 string 中找到匹配正则表达式 pattern 的所有子串,用另一个字符串 repl 进行替换。如果没有找到匹配 pattern 的串,则返回未被修改的 string。Repl 既可以是字符串也可以是一个函数。 由此可分析上面使用的语句的含义:在'100abc'这个字符串中找到非数字的字符(正则表达式中'\D'表示非数字),并用""替换,然后返回的就是只剩下数字的字符串。 totalCount = '100abc' totalCount = re.sub("\D", "", totalCount) print(……
python实现指定字符串补全空格、前面填充0的方法
Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0。 zfill()方法语法:str.zfill(width) 参数width -- 指定字符串的长度。原字符串右对齐,前面填充0。 返回指定长度的字符串。 以下实例展示了 zfill()函数的使用方法: #!/usr/bin/pythonstr = "this is string example....wow!!!";print str.zfill(40);print str.zfill(50); 以上实例输出结果如下: 00000000this is string example....wow!!! 000000000000000000this is string example....wow!!! zfill()则用于向数值的字符串表达式左侧填充0, 该函数可以正确理解正负号: '12'.zfill(5)'00012' '-3.14'.zfill(7)'-003.14' '3.14159265359'.zfill(5)'3.14159265359'===================================== 在Python中打印字符串时可以调用ljust(左对齐),rjust(右对齐),center(中间对齐)来输出整齐美观的字符串 python实现指定字符串补全空格的方法: 如果希望字符串的长度固定,给定的字符……
Python实现字符串匹配的KMP算法
kmp算法 KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KMP算法)。KMP算法的关键是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是实现一个next()函数,函数本身包含了模式串的局部匹配信息。 #! /usr/bin/python# coding=utf-8"""基于这篇文章的python实现http://blog.sae.sina.com.cn/archives/307"""import unittestdef pmt(s): """ PartialMatchTable """ prefix = [s[:i+1] for i in range(len(s)-1)] postfix = [s[i+1:] for i in range(len(s)-1)] intersection = list(set(prefix) lt; len(big) - len(small) + 1: match = True for j in range(len(small)): if big[i+j] != small[j]: match = False break if match: return True #移动位数 = 已匹配的字符数 – 对应的部分匹配值 if j: i += j - pmt(small[:j]) else: i += 1 return Falseclass kmpTests(unit……