如何清理以下代码并使其看起来更好?你知道吗
我想知道是否有一种方法可以将所有这些变量和值设置在一个更简单、更简短的版本中。这样做的例子是什么?:-)
import feedparser
import memcache
import sys
mc = memcache.Client(["127.0.0.1:11211"])
rss = feedparser.parse('http://example.com/example.rss')
song0 = rss.entries[0].title.encode('latin-1', 'replace').replace("?" , "-")
song1 = rss.entries[1].title.encode('latin-1', 'replace').replace("?" , "-")
song2 = rss.entries[2].title.encode('latin-1', 'replace').replace("?" , "-")
song3 = rss.entries[3].title.encode('latin-1', 'replace').replace("?" , "-")
song4 = rss.entries[4].title.encode('latin-1', 'replace').replace("?" , "-")
song5 = rss.entries[5].title.encode('latin-1', 'replace').replace("?" , "-")
song6 = rss.entries[6].title.encode('latin-1', 'replace').replace("?" , "-")
song7 = rss.entries[7].title.encode('latin-1', 'replace').replace("?" , "-")
song8 = rss.entries[8].title.encode('latin-1', 'replace').replace("?" , "-")
song9 = rss.entries[9].title.encode('latin-1', 'replace').replace("?" , "-")
mc.set("track0", song0);
mc.set("track1", song1);
mc.set("track2", song2);
mc.set("track3", song3);
mc.set("track4", song4);
mc.set("track5", song5);
mc.set("track6", song6);
mc.set("track7", song7);
mc.set("track8", song8);
mc.set("track9", song9);
最干净(因此最好)的方法:
如果你真的想把歌曲保存在不同的变量中(我几乎可以肯定你实际上不想这样做;更详细地说,不建议使用它(参见对这个问题的评论)):
将
enumerate()
与rss.entries
一起使用将使您摆脱手动维护索引的负担。最棒的是,不管rss.entries
的长度如何,它都能工作。你知道吗您有10个变量,它们的名称相似,但只有一个数字不同。这是一个明确的信号,表明你真正想要使用的是一个列表:
相关问题 更多 >
编程相关推荐