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

yipeiwu_com6年前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使用matplotlib实现绘制自定义图形功能示例

Python使用matplotlib实现绘制自定义图形功能示例

本文实例讲述了Python使用matplotlib实现绘制自定义图形功能。分享给大家供大家参考,具体如下: 一 代码 from matplotlib.path importPath...

Flask框架中request、请求钩子、上下文用法分析

本文实例讲述了Flask框架中request、请求钩子、上下文用法。分享给大家供大家参考,具体如下: request 就是flask中代表当前请求的request对象: 常用的属性如下:...

Python过滤txt文件内重复内容的方法

Python过滤txt文件内重复内容的方法

Python过滤txt文件内重复内容,并将过滤后的内容保存到新的txt中 示例如下 原文件 处理之后的文件 直接上代码 # -*-coding:utf-8 -*- f = o...

Python 3.6 中使用pdfminer解析pdf文件的实现

Python 3.6 中使用pdfminer解析pdf文件的实现

所使用python环境为最新的3.6版本 一、安装pdfminer模块 安装anaconda后,直接可以通过pip安装 pip install pdfminer3k  ...

利用python的socket发送http(s)请求方法示例

利用python的socket发送http(s)请求方法示例

前言 这是个在写计算机网络课设的时候碰到的问题,卡了我一天,所以总结一下。 其实在之前就有用requests写过python爬虫,但是计算机网络要求更底层的实现,刚好我看到了[这篇文章]...