您的位置:首页 > 编程语言 > Python开发

Python——字符串与正则表达式

2020-02-02 14:29 1271 查看

1.显示1+2+…+1000,保存

alist=list(range(1,1001))
blist=list(map(str,alist))
cstr='+'.join(blist)
dstr=cstr+'='+str(sum(range(1,1001)))
print(dstr)
open('text.txt','w').write(dstr)
import os
print(os.getcwd())

2.字符串的格式化

a=1750300006
print(hex(a))
print("%o"%a)
print("%e"%a)

x=30;y=50
print("结果 %d %d"%(x,y))

print("数值1:{0:,} 十六进制: {0:#x};数值2:{1} 八进制:{1:#o};数值3:{2} 科学计数法:{2:#e}".format(5555,55,123.456))

3.index函数 count函数 find函数

s='666abc839848abc38339abc899abcd67'
print(s.index('abc'))#返回首次出现的位置
print(s.rindex('abc'))#返回末次出现的位置
print(s.count('abc'))#出现的次数
print(s.find('abc'))#查找首次出现的位置(不存在则为-1)
print(s.rfind('abc'))#查找末次出现的位置

4.split函数

s="ab cd      efg"
print(s.split())#使用空格为分隔符
s="ab,cd,ef,ghi"
print(s.split(','))#使用逗号为分隔符

5.join函数

a=[2,3,4]
a1=list(map(str,a))
s='+'.join(a1)#将列表中多个字符串进行连接,并插入指定字符
print(s)

6.replace函数

t='中国 1234 abc  中国'
t=t.replace('中国','china')#替换
print(t)

7.eval函数

i=eval('3+5')#任意字符串转化为Python表达式并求值
print(i)

8.正则表达式

x='abc  123 edf  ABC  789'
import re
a1=re.findall("[^a-z\s]+",x)
print(a1)
a2=re.findall("[a-zA-Z]+",x)
print(a2)

y="abc.788.abd.37834"
a3=re.findall("[^\.]+",y)
print(a3)

s="343434python  dfd333  cython 73438483878 bython 7838474834bython "
a4=re.findall("[pcb]ython",s)
print(a4)

9.电子邮件

pat='^[\w\-]+@([\w\-]+\.)+[\w\-]+$'
s='dsfdas@dfd-dddf.com.cn.cdfd'
re.match(pat,s) != None

10.电话号码

pat="(\d{3}-\d{8})|(\d{4}-\d{7})|(1\d{10})"
s='andfd 027-19880987 dfjkdjfk 15331234567d  0755-1234567dkfkjfd"   '
re.findall(pat,s)
  • 点赞
  • 收藏
  • 分享
  • 文章举报
可一z可再 发布了18 篇原创文章 · 获赞 1 · 访问量 238 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: