我是Python新手,来自Java背景。我想知道写这个代码的最Python的方式:将字符串列表追加到数组的Python方法
entry_list = []
for entry in feed.entry:
entry_list.append(entry.title.text)
基本上是在饲料中每一个元素,我想该元素的标题添加到列表中。
我不知道我是否应该使用地图()或lambda函数或什么...
感谢
我是Python新手,来自Java背景。我想知道写这个代码的最Python的方式:将字符串列表追加到数组的Python方法
entry_list = []
for entry in feed.entry:
entry_list.append(entry.title.text)
基本上是在饲料中每一个元素,我想该元素的标题添加到列表中。
我不知道我是否应该使用地图()或lambda函数或什么...
感谢
最Python的代码,我能想到的:
entry_list = [entry.title.text for entry in feed.entry]
这是一个list comprehension这将构建一个新的列表出feed.entry.title.text元素。
要追加,你需要做的事:
entry_list.extend([entry.title.text for entry in feed.entry])
作为一个侧面说明,在做扩展业务时,常快generator expression比列表理解慢得多。
始终使用列表理解为简洁的表达式。
entry_list = [entry.title.text for entry in feed.entry]
如果所有要与entry_list要做的就是再次遍历它,你可以使用发电机表达
entry_list = (entry.title.text for entry in feed.entry)
注意,唯一的区别是使用括号。当使用生成器格式时,entry_list没有被填充并且可以保存内存。您将仍然能够做的事情一样
for items in entry_list:
do something
和
''.join(entry_list)
也很好,让我知道。谢谢! – Cuga
http://docs.python.org/howto/functional.html - 快乐编码。 – 2011-11-03 04:24:26
@pst根本没有任何帮助。我知道如何以多种方式编写代码,我正在寻求其他人的建议,以获得最佳方式。 – Cuga
我可以发誓,它涵盖了以下所有方法 - 特别是列表解析;-) – 2011-11-05 18:05:50