Python是IT人士首选吗?字符串处理技巧有哪些?Python入门简单、功能强大,是入行IT开发人士的首选,为了更快的入门,很多人选择参加专业的学习。接下来,千锋小编就给大家分享一下有关Python字符串处理的知识。
字符串是Python中最常用的数据类型,Python要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行,只要两边的引号能配对即可。Python的字符串处理,在爬虫的数据解析、大数据的文本清洗以及普通文件处理等方面应用非常广泛。
Python字符串处理方法如下:
一、字符串的相乘和切片
1)相乘。当我们编写Python代码时要分隔符,此时用字符串的乘法操作就很容易实现。
line='*'*30
print(line)
>>******************************
2)切片
str='Monday is a busy day'
print(str[0:7]) #表示取第一个到第七个的字符串
print(str[-3:]) #表示取从倒数第三个字符开始到结尾的字符串
print(str[::]) #复制字符串
二、字符串的连接和合并
1)连接,两个字符可以很方便的通过“+”连接起来
str1='Hello'
str2='World'
new_str=str1+str2
print(new_str)
>>>HelloWorld
2)合并,用join方法
url=['www','python','org']
print('.'.join(url))
>>>www.python.org
三、字符串的分割
1)普通的分割,用split函数,但是split只能做非常简单的分割,而且不支持多个分隔。
phone='400-800-800-1234'
print(phone.split('-'))
>>['400', '800', '800', '1234']
2)复杂的分割,r表示不转义,分隔符可以是「;」,或者「,」,或者空格后面跟0个多个额外的空格,然后按照这个模式去分割。
line='hello world; python, I ,like, it'
import re
print(re.split(r'[;,s]\s*',line))
>>>['hello world', 'python', 'I ', 'like', 'it']
四、字符串的查找和匹配
1)一般查找
利用find方法可以很方便的在长的字符串里面查找子字符串,会返回字符串所在位置的索引,若找不到返回-1
str1 = "this is string example....wow!!!"
str2 = "exam"
print(str1.find(str2)) # 15
print(str1.find(str2, 10)) # 15
print(str1.find(str2, 40)) # -1
2)复杂的匹配,就需要用到正则表达式。
mydate='11/27/2016'
import re
if re.match(r'\d+/\d+/\d+',mydate):
print('ok.match')
else:
print('not match')
>>>ok.match
五、字符串的替换
1)普通的替换,用replace方法就可以了
text='python is an easy to learn,powerful programming language.'
print(text.replace('learn','study'))
>>>python is an easy to study,powerful programming language.
2)复杂的替换,需要用到re模块的sub函数
students='Boy 103,girl 105'
import re
print(re.sub(r'\d+','100',students))
>>>Boy 100,girl 100
六、去掉字符串中一些特定的字符
1)去空格,对文本处理的时候比如从文件中读取一行,然后需要去除每一行的空格、table或者是换行符。
str = ' python str '
print(str)
# 去首尾空格
print(str.strip())
# 去左侧空格
print(str.lstrip())
# 去右侧空格
print(str.rstrip())
2)复杂的文本清理,可以利用str.translate。
比如先构建一个转换表,table是一个翻译表,表示把“to”转成大写的“TO”,然后在old_str里面去掉‘12345’,然后剩下的字符串再经过table翻译。
instr = 'to'
outstr = 'TO'
old_str = 'Hello world , welcome to use Python. 123456'
remove = '12345'
table = str.maketrans(instr,outstr,remove)
new_str = old_str.translate(table)
print(new_str)
>>>HellO wOrld , welcOme TO use PyThOn. 6
七、统计字符串里某个字符出现的次数
str = "thing example....wow!!!"
print(str.count('i', 0, 5)) # 1
print(str.count('e')) # 2
当然,有关Python字符串处理的知识还有很多,在此小编就不一一赘述了。如果你想快速学好Python技术,选择专业的学习很不错。能让你理论与实战兼备,做企业急需的人才!