Python入门与进阶(10-12)

2018-05-09  本文已影响8人  buaishengqi

10-12 把函数作为参数传递

# 10-12 把函数作为参数传递
# Q1:有一个字符串,找出里面所有的数字,凡是大于6的,全部替换成9,凡是小于6的,全部替换成0
import re 
s = 'A8C3721D86'

def convert(value):
    matched = value.group()
    if matched >=6:
        return 9
    else:
        return 0

r = re.sub('\d',convert,s)#首先拿到数字
print(r)
# 打印结果如图1,是报错的

# 正确的如下:
import re 
s = 'A8C3721D86'

def convert(value):
    matched = value.group()
    if int(matched) >=6:
        return '9'
    else:
        return '0'

r = re.sub('\d',convert,s)#首先拿到数字
print(r)
# 打印结果如图2,正确的
1.jpg 2.jpg
上一篇 下一篇

猜你喜欢

热点阅读