亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于復雜表達式

d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }

def generate_tr(name, score):

? ? if score < 60:

? ? ? ? return '<tr><td>%s</td><td style="color:red">%s<td></tr>' % (name , score)

? ? return '<tr><td>%s</td><td>%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>'



tds = [generate_tr(name, score) for name, score in d.iteritems()] 這句是怎么理解的?
return '<tr><td>%s</td><td>%s</td></tr>' % (name, score) 還有這句后面加% (name, score) 是什么意思?

正在回答

1 回答


tds = [generate_tr(name, score)?for name, score in d.iteritems()]中for前面函數generate_tr(name, score)可看作對name,scoure做了一個處理,他其實是???????????

?? for name, score in d.iteritems():

?????????????generate_tr(name, score)?

的變形,最后把這個for循環的結果賦值給變量tds。???????????


'<tr><td>%s</td><td>%s</td></tr>' % (name, score) 還有這句后面加% (name, score)?,自己的理解是這個跟C 語言中的printf()格式化輸出很像,??% (name, score)這個中的%對應前面占位符%s中的%,??()中是對應的變量,也可以把這個(name, score)??看作tuple? ,個人拙見,僅供參考!望前輩批評指正!


4 回復 有任何疑惑可以回復我~
#1

慕沐4974640 提問者

恩恩 這下明白了 說的還是蠻對的 這樣子想就明白了
2017-04-09 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758392    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

關于復雜表達式

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號