python中的For循环不断更改索引

2024-03-28 13:10:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个循环来创建导航栏。它的工作除了安排的联系不断变化,每次我运行程序

nav ={'page1':'page1.html','page2': 'page2.html','page3':'page3.html','page4':'page4.html','page5':'page5.html'}
output= ""
for key in nav:
    if nav[key]==active:
        output+='<li class="active"><a href="%s">%s</a></li>' % (nav[key],key)
    else:
        linksHtml+='<li><a href="%s">%s</a></li>' % (nav[key],key)
return output

Tags: keyin程序foroutputhtmlliactive
2条回答

使用collections包orderedict方法,您可以确保它们总是以最初添加它们的相同顺序出现。详见https://docs.python.org/2/library/collections.html#collections.OrderedDict。你知道吗

import collections

nav ={'page1':'page1.html','page2': 'page2.html','page3':'page3.html','page4':'page4.html','page5':'page5.html'}
output= ""
for key in collections.OrderedDict(nav):
    if nav[key]==active:
        output+='<li class="active"><a href="%s">%s</a></li>' % (nav[key],key)
    else:
        linksHtml+='<li><a href="%s">%s</a></li>' % (nav[key],key)
return output

如果要保持插入顺序,可以使用OrderDict。你知道吗

相关问题 更多 >