- 论坛徽章:
- 0
|
python基础教程第二版中第20章有个即时标记的例子,先把普通的文本文件用生成器分块再用HTML标签自动注释的例子,我按照书中的例子编译总是报错
报错内容:D:\code\2mark>simple_markup.py <test_input.txt> test_output.html
Traceback (most recent call last):
File "D:\code\2mark\simple_markup.py",line 2,in <module>
from util import *
File "D:\code\2mark\util.py",line 3
yield '\n'
IndentationError: unexpected indent
util.py的代码是:
def lines(file):
for line in file:yield line
yield '\n'
def blocks(file):
block=[]
for line in lines(file):
if line.strip():
block.append(line)
elif block:
yield ''.join(block).strip()
block=[]
simple_markup.py的代码是:
import sys,re
from util import *
print '<html><head><title>...</title><body>'
title = True
for block in blocks(sys.stdin):
block=re.sub(r'\*(.+?)\*',r'<em>\1</em>',block)
if title:
print "<h1>'
print block
print '</h1>'
title=False
else:
print '<p>'
print block
print '</p>'
print '</body></html>'
修改了多次不知道哪出问题了编译不过去,请教~ |
|