首页 > 编程语言 >Python 中的一些常用的内置类

Python 中的一些常用的内置类

时间:2024-11-25 21:15:54浏览次数:6  
标签:map 常用 内置 Python Counter list common print counter

前言

博主在leetcode上刷题时发现题解中有很多没有见过的方法和函数,深感对python了解学习的不足,遂简要记录下这些方法,以便个人查阅
内容多为AI生成,还有一些自己的理解,若有错误或不当之处,望各位指正

Counter

在 Python 中,Counter是collections模块中的一个类,它主要用于方便地计数可哈希对象。以下是关于Counter的详细介绍:

创建对象
from collections import Counter

lst = [1, 2, 2, 3, 3, 3]
counter = Counter(lst)
print(counter)  # Counter({3: 3, 2: 2, 1: 1})
常用方法和属性
  1. most_common(n)
    返回一个列表,其中包含最常见的n个元素及其计数,按照计数从多到少排序。
counter = Counter([1, 2, 2, 3, 3, 3, 4, 4])
most_common = counter.most_common(2)
print(most_common)  # [(3, 3), (2, 2)]
  1. elements()
    返回一个迭代器,内容为创建对象时的迭代器
counter = Counter([1, 2, 2, 3])
elements = list(counter.elements())
print(elements)  # [1, 2, 2, 3]
  1. items()
    返回一个迭代器,包含计数器中的所有元素和其出现次数
from collections import Counter

counter = Counter({'apple': 3, 'banana': 2, 'orange': 1})

for item, count in counter.items():
    print(f'{item}: {count}')
'''
apple: 3
banana: 2
orange: 1
'''
  1. keys()
    返回一个迭代器,包含计数器中所有的元素
    由于counter基于哈希表实现,该方法与字典处keys相同

  2. 交集 并集运算

counter1 = Counter([1, 2, 2, 3])
counter2 = Counter([2, 3, 3, 4])

result = counter1 & counter2 #交集
print(result)  # Counter({2: 1, 3: 1})

result = counter1 | counter2 #并集
print(result)  # Counter({1: 1, 2: 2, 3: 3, 4: 1})

enumerate

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

enumerate(sequence, [start=0])
# start 默认为0

实例

seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
     print i, element
""" 
0 one
1 two
2 three
"""

map

map() 会根据提供的函数对指定序列做映射。
第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。

map(function, iterable, ...)

实例

def square(x) :         # 计算平方数
    return x ** 2
map(square, [1,2,3,4,5])    # 计算列表各个元素的平方
list(map(square, [1,2,3,4,5]))   # 使用 list() 转换为列表
[1, 4, 9, 16, 25]

除此之外map还可用于类型转换
常用于 a=list(map(int, input.split())

标签:map,常用,内置,Python,Counter,list,common,print,counter
From: https://www.cnblogs.com/Chano/p/18458803

相关文章

  • python基础第三篇
    and且有False则Falsea=3b=4print(a>3andb>4)#FalseandFalse=Falseprint(a==3andb>4)#TrueandFalse=Falseprint(a>3andb==4)#FalseandTrue=Falseprint(a==3andb==4)#TrueandTrue=Trueor或有True则Tru......
  • python中的链栈
    链表思维导图链栈概念栈的操作创建判断栈空链栈的入栈链栈的出栈遍历栈输出栈的大小全部代码思维导图链栈概念栈的概念:由一系列节点组成,每个节点包含两个部分:数据域用于存储数据,以及指针域指向下一个节点。链表的特点是没有固定的大小,可以动态地添加或删除元素,......
  • C语言常用数据类型介绍(有图)
    数据类型其实是固定大小内存的别名,并且描述了一个变量存放什么类型的数据。简单来说,就是组织和操作数据。数据类型不仅帮助我们组织和操作数据,还决定了程序如何有效的利⽤内存。序号数据类型中文说明大小(字节)1short短整型22int基本整形43long(longint)长整型4(32位编译器......
  • Python -- PyExecJS模块
    PyExecJS介绍PyExecJS是一个可以使用Python来模拟运行JavaScript的库。使用该模块可以通过python程序调用执行js代码,获取js代码返回的结果!注意事项:电脑必须安装好了nodejs开发环境上述模块才可以生效!环境安装:pipinstallPyExecJS使用步骤:导包:importexecjs......
  • 前后端开发常用配置
    初次发布于我的个人文档收集了一些常用的配置类,便于后续查询使用。后端常用配置1.全局跨域配置packageedu.zafu.teaai.config;importorg.springframework.context.annotation.Configuration;importorg.springframework.web.servlet.config.annotation.CorsRegistry;imp......
  • PythonDay3Advance
    PythonDay3Advance运算符位运算符进制:将整数分了几种进制表示法二进制:由0,1构成,逢2进1,以0b开头八进制:由0,1,2,3,4,5,6,7构成,逢8进1,以0开头十进制:由0,1,2,3,4,5,6,7,8,9构成,逢10进1,默认就是10进制十六进制:由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,逢16进1,以0x开头如何从其他进制转10进制十进制转十进......
  • SQL注入常用语句及一道有意思的题:[GYCTF2020]Blacklist
    SQL注入0x01:联合查询注入常用语句:/?id=1'and1'='2或/?id=1and1=2//判断是字符型注入还是数字型注入//下面以字符型为例/?id=1'unionselect1,2,3#//爆回显位/?id=1'unionselect1,2,database()#//爆数据库名/?id=1'unionselect1,2,group_concat(table_name)fr......
  • Python数据结构day2
    一、链表1.1目的解决顺序表存储数据有上限,并且插入和删除操作效率低的问题1.2概念链表:链式存储的线性表,使用随机物理内存存储逻辑上连续的数据链表的组成:由一个个结点组成结点:由数据域和链接域组成,是链表的基本单位数据域:存储数据元素的区域链接域:记录下一个结点所在位......
  • Python数据结构day3
    一、双向链表1.1作用双向链表也叫双面链表。对于单向链表而言。只能通过头节点或者第一个节点出发,单向的访问后继节点,每个节点只能记录其后继节点的信息(位置),不能向前遍历。所以引入双向链表,双向链表可以保持单向链表特点的基础上,让每个节点,既能向后访问后继节点,也可以向前......
  • python实现LBP方法提取图像纹理特征 (附完整源码)
    python实现LBP方法提取图像纹理特征局部二值模式(LBP)是一种用于纹理特征提取的有效方法。下面是一个使用Python实现LBP方法提取图像纹理特征的完整示例代码。我们将使用OpenCV库来处理图像,并使用NumPy来进行数组操作。首先,确保你已经安装了OpenCV库。如果没有安装,可......