- 帖子
- 909
- 积分
- 1215
- 技术
- 3
- 捐助
- 0
- 注册时间
- 2018-1-17
|
3楼
发表于 2020-6-7 23:04
| 只看该作者
回复 2# wujunkai
def tokenize(text, match=re.compile("([idel])|(/d+):|(-?/d+)").match):
i = 0
while i < len(text):
m = match(text, i)
s = m.group(m.lastindex)
i = m.end()
if m.lastindex == 2:
yield "s"
yield text[i:i+int(s)]
i = i + int(s)
else:
yield s
src = tokenize(text)
print(src)
====================
我完整的贴出来吧
函数定义成
def tokenize(text, match=re.compile("([idel])|(/d+):|(-?/d+)").match):
和
def tokenize(text, match=re.compile("([idel])|(/d+):|(-?/d+)")):
输出的src是一样的。
这里比较的难理解的点应该是yield。
这段代码究竟在干什么? |
|