Python正则方法

练习64:使用正则的方法
把 "姓名,马云;性别:男,身高:180" 转换为字典{"姓名":"马云","性别":"男","身高":"180"}
"""
str1 = "姓名,马云;性别:男,身高:180"
s_list = re.split('[,;:]',str1)
print(s_list)
dic= {}
for i in range(0,len(s_list),2):
    dic[s_list[i]] = s_list[i+1]
print(dic)

"""
练习65:给定数字字符串'1',后面的字符串用来描述前一个字符串
'1',
'11':1个1
'21':2个1
'1211':1个2和1个1
'111221':1个1和1个2和2个1
'312211':3个1和2个2和1个1
从键盘输入数字n
打印第n个字符串,例n = 4 ,打印 '111221'
"""
s = '1'
for i in range(5):
    s_list = re.findall('[1]+|[2]+|[3]+',s)
    str1 = ""
    for st in s_list:
        str1=str1+str(len(st))+st[0]
    s = str1
print(str1)
"""
练习66: 字符串包含正数和负数,多个数字连续在一起时可以看做1个数字、两个数字、多个数字,计算
         字符串中所有数字可能之和的最小值。
       例:sd345s8d7gf23sdg-2345sg   345可以理解为(3和4和5)或(34和5)或(3和45)或(345)
"""
str1 = 'sd345s8d7gf23sdg-2345sg'
s_list = re.findall('\d|-\d+',str1)
print(s_list)
s = sum(map(int,s_list))
print(s)

"""
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值