如果我只想在循环中使用索引,则最好将range/xrange
函数与len()
a = [1,2,3]
for i in xrange(len(a)):
print i
还是enumerate
?即使我根本不使用p
?
for i,p in enumerate(a):
print i
我会使用enumerate
它,因为它更通用-
例如它将在可迭代对象和序列上工作,并且仅返回对对象的引用的开销并不算大-xrange(len(something))
尽管(对我而言)按您的意图更易于阅读-
在不支持len
…的物体上折断
问题内容: 以下哪项将被认为是更好/更清晰/更快/更多的“ Pythonic”?我不在乎列表的内容,只关心它的持续时间。 要么 如果有什么不同,该函数也会利用。 问题答案: 一些快速的计时运行似乎使第二个选项略有优势: 只是为了好玩而已(Python v2.7.2) 我希望 首先 使用 可读代码 ,然后使用(如果可用)(例如,Python 3.x之前的版本),然后使用和。
我刚刚注意到javadoc状态(强调为我的): 返回声明中包含的此枚举常量的名称。该方法可能被重写,尽管它通常不是必需的或不需要的。当存在更“程序员友好”的字符串窗体时,枚举类型应重写此方法。 默认情况下,和返回相同的内容,因此即使被重写,仍然可以通过方法访问枚举的名称。 编辑:供参考,的javadoc(强调与原文相同): 返回此枚举常量的名称,与在其枚举声明中声明的名称完全相同。大多数程序员应该
问题内容: 我很清楚Java中枚举的高级用法。对我来说,许多区别于普通班和告诉他们需要的观点也很清楚。 谁能举一些带有高级枚举示例代码的实际示例?可以清楚地阐述一下 我们应该避免使用类,而应该使用枚举 。 请不要混淆。我不是在问如何使用枚举或枚举的用途是什么。关于此有很多问题和答案。我正在寻找一些实时/实时/实际的例子,我们应该避免任何其他数据类型或类。 问题答案: 试试这个例子: 用法:
问题内容: 例如,如果我有一个带有两种情况的枚举,它是否比布尔值占用更多的内存?语言:Java,C ++ 问题答案: 在Java中,an 是成熟的类: Java编程语言的枚举类型比其他语言的枚举类型更强大。枚举声明定义了一个类(称为枚举类型)。枚举类主体可以包括方法和其他字段。 为了查看每个文件的实际大小,让我们做一个实际的文件并检查它创建的文件的内容。 假设我们有以下枚举类: 编译以上内容并反汇
问题内容: 是否可以像下面那样进行枚举 这样,当我按输入值进行搜索时,请说101。它将返回“ rich”?如何在枚举中做到这一点?能举个例子吗?我不想用forloop循环整个枚举来获取string_value。可能? 问题答案: 如其他建议的那样,将with与值一起使用。 然后,提供一种静态方法,该方法通过对所有值的有序列表/数组执行二进制搜索,而不是对枚举值执行强力迭代搜索。 要执行搜索,请从中
我正在使用Compass从DTO对象中过滤数据。如果字段是POJO对象,则使用标记字段;如果字段是字符串,则使用标记字段。这非常有效:我将对象和字符串编入索引。 我的问题是如何注释枚举数据类型? 我拥有的枚举示例: 在这个片段中,我应该在哪里放置注释,应该放置哪个注释?