用python一行代码得到数组中某个元素的个数方法

yipeiwu_com7年前Python基础

想法由来

今天写代码过程中遇到一个需求,计算一个list中数值为1的元素的个数,其中这个list的元素数值不是为0就是为1。

一开始想到的是写个方法来计算:

# 返回一个0,1数组中1的数量
def num_one(source_array):
 count = 0
 for x in source_array:
  if x == 1:
   count += 1
 return count

嗯好吧,然后觉得这是最low的方法了,就在想强大的python可不可以一行代码就做到以上的效果,然后发现真的可以。

count方法描述

用到了一个python自带的count()方法,count()方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。

count方法语法与参数

语法:

str.count(sub, start= 0,end=len(string))

参数:

- sub – 搜索的子字符串

- start – 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。

- end – 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。

具体实现

把一个list转类型为string然后用count方法计算所需要的元素个数即可,代码如下:

num = str(source_array).count("1")

如果源数组是一个numpy.array类型的数组,则将其转为list后再计数:

num = str(source_array.tolist()).count("1")

以上这篇用python一行代码得到数组中某个元素的个数方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

跟老齐学Python之类的细节

这几天和几个朋友以各种途径讨论过OOP的相关问题,他们是:令狐虫、Frank、晋剑、小冯 大家对OOP有不同看法,所谓工程派和学院派看法不一致。从应用的角度看,工程派的观点是值得推荐的,...

Python实现的逻辑回归算法示例【附测试csv文件下载】

Python实现的逻辑回归算法示例【附测试csv文件下载】

本文实例讲述了Python实现的逻辑回归算法。分享给大家供大家参考,具体如下: 使用python实现逻辑回归 Using Python to Implement Logistic Reg...

基于python 微信小程序之获取已存在模板消息列表

前言: 为了获取一定高级操作,如:微信模板消息(xiao,xin)推送,把消息推送给用户,或者是获取用户授权信息都需要用到access token,有效期为两个小时? 过了两个小时怎么办...

python中多层嵌套列表的拆分方法

场景:有一个多层嵌套的列表如:[[23],[3,3],[22,22],1,123,[[123,a],2]] 拆分成: def splitlist(list): ''' 现...

详解Appium+Python之生成html测试报告

详解Appium+Python之生成html测试报告

思考:测试用例执行后,如何生成一个直观漂亮的测试报告呢? 分析: 1.unittest单元测试框架本身带有一个textTestRunner类,可以生成txt文本格式的测试报告,但是页面不...