首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在这个练习中,哪一种方式会更"Pythonic“?

在这个练习中,哪一种方式会更"Pythonic“?
EN

Stack Overflow用户
提问于 2015-11-07 14:25:31
回答 1查看 76关注 0票数 0

我在这里有个任务:

给定一个in数组,返回数组中的9's数。

代码语言:javascript
运行
复制
array_count9([1, 2, 9]) → 1
array_count9([1, 9, 9]) → 2
array_count9([1, 9, 9, 3, 9]) → 3

我有两个想法,一个是:

代码语言:javascript
运行
复制
def array_count9(nums):
    count = 0
    list1 = [x for x in nums if x==9]
    return len(list1)

另一个:

代码语言:javascript
运行
复制
def array_count9(nums):
    count = 0
    for n in nums:
        if n==9:
            count +=1
    return count

但我想知道哪一种方式会更像毕达通,在性能上,清晰,.?非常感谢

EN

回答 1

Stack Overflow用户

发布于 2015-11-07 14:27:37

最重要的Pythonic方法是使用内置函数,在本例中是count。试试这个:

代码语言:javascript
运行
复制
def array_count9(nums):
  return nums.count(9)
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33583820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档