#在慕课网上的练习结果正确,我用电脑上的python3时,都把print加上括号,但是老是出错,也不知道为啥?
#对python3的代码不熟呀,谁来看看该怎么把python2代码改为python3的代码
# -*- coding: utf-8 -*-
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
def generate_tr(name, score):
if score>=60:
return '<tr><td>%s</td><td>%s</td></tr>' % (name, score)
else:
return '<tr><td>%s</td><td style="color:red">%s</td></tr>'%(name,score)
tds = [generate_tr(name,score) for name, score in d.iteritems()]
print('<table border="1">')
print('<tr><th>Name</th><th>Score</th><tr>')
print('\n'.join(tds))
print('</table>')
1 回答
已采纳
孤独的小猪
TA贡献232条经验 获得超302个赞
你好,经过调试,发现你的代码需要在python3上做如下修改
1、你的print()使用的是中文的括号,应该改成英文的括号。
2、在python3中,已经把 dict.iteritems()移除了,换成dict.items()了。所以在python3中,正确代码是:
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } def generate_tr(name, score): if score>=60: return '<tr><td>%s</td><td>%s</td></tr>' % (name, score) else: return '<tr><td>%s</td><td style="color:red">%s</td></tr>'%(name,score) tds = [generate_tr(name,score) for name, score in d.items()] print('<table border="1">') print('<tr><th>Name</th><th>Score</th><tr>') print('\n'.join(tds)) print('</table>')
添加回答
举报
0/150
提交
取消