【Python】列表和字典

news/2025/2/19 8:16:01/


知识目录

  • 一、写在前面✨
  • 二、列表应用
  • 三、字典应用
  • 四、总结撒花😊

一、写在前面✨

大家好!我是初心,希望我们一路走来能坚守初心!

今天跟大家分享的文章是 Python函数式编程第二弹,再次以两个简单的例子带大家更好的理解Python函数的使用。 ,希望能帮助到大家!本篇文章收录于 初心 的 Python从入门到精通 专栏。

🏠 个人主页:初心%个人主页
🧑 个人简介:大家好,我是初心,和大家共同努力
💕欢迎大家:这里是CSDN,我记录知识的地方,喜欢的话请三连,有问题请私信😘

💕 如果有一个喜欢你的人出现,一定不要凶她哦! —— 瑶瑶「次元战争·红龙」

本期跟大家分享的是列表和字典的两个小例题,希望能帮助到大家。

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

Python有6个序列的内置类型,但最常见的是列表和元组。

二、列表应用

列表是一种可变的、有序的数据结构,可以随时添加和删除其中的元素。

List (列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组

编程实现:给定一组数值,输出比平均体重更重的那些数值。

from functools import reducedef evaluate(weight_list):""">>> evaluate([24.5,28,21,20,19])[24.5, 28]>>> evaluate([28])[]>>> evaluate([25.6, 24.6, 20, 19])[25.6, 24.6]>>> evaluate([20, 20, 20, 20])[]"""
import doctest
doctest.testmod()

具体实现:(返回的是一个列表生成式)

sum = 0
# 计算总体重
for i in weight_list:sum += i
# 平均体重
avg_weight = sum / len(weight_list)
# 返回超重体重
return [i for i in weight_list if i > avg_weight]

三、字典应用

字典是另一种可变容器模型,且可存储任意类型对象

字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中。

编程实现:对s字符串中的字母和数字统计出现次数(注意不区分字母大小写,统一用小写)。

def count(s):""" 对s字符串中的字母和数字统计出现次数(注意不区分字母大小写,统一用小写)>>> count("abc1ab"){'a': 2, 'b': 2, 'c': 1, '1': 1}>>> count("#bc1ab"){'b': 2, 'c': 1, '1': 1, 'a': 1}>>> count("AbC1ab"){'a': 2, 'b': 2, 'c': 1, '1': 1}    """
import doctest
doctest.testmod()

具体实现:(不包括函数名和doctest)

# 导入正则表达式模块
import re
# 定义一个空字典
result = {}
# 首先使用正则表达式去除非数字和字母的字符
regex = r'[^0-9a-zA-Z]'
s = re.sub(regex, '', s)
# 然后转化为小写
s = s.lower()
# 遍历字符串
for i in s:# 如果字典中存在这个键,就数量加1if result.__contains__(i):result[i] += 1else:# 否则数量为1result[i] = 1
return result

四、总结撒花😊

本文主要讲解了Python中常用的两种数据类型——列表和字典😊

这就是今天要分享给大家的全部内容了,我们下期再见!😊

🏠 本文由初心原创,首发于CSDN博客, 博客主页:初心%🏠

🏠 我在CSDN等你哦!😍


http://www.ppmy.cn/news/92594.html

相关文章

园区网络安全设计——出口防火墙

园区网络安全设计——出口防火墙 网络接入人员众多,业务复杂,流量构成丰富多样;容易成为DDoS攻击的目标,而且一旦攻击成功,业务损失巨大;网络病毒活跃,严重威胁网络安全和终端的安全&#xff1…

同余方程 乘法逆元 扩展欧几里得算法 5.26

同余方程 乘法逆元 扩展欧几里得算法 526 同余方程 乘法逆元 扩展欧几里得算法_哔哩哔哩_bilibili 给定整数a,b,m,求解同余方程axb(mod m). 如果x存在整数解,则输出任意一个; 如果不存在,则输出none 例: 8x4(mod…

泛型相关知识

说明:泛型本身并不一定非要在集合中使用,很多非集合的场景也是要使用泛型的。 一.泛型的引入 1.什么是泛型? 泛型,有点像瓶子上的“标签”,可以在使用之前,表名某个xxx的类型是啥,用的时候即…

20230526----重返学习-TaskOA任务管理系统-其它Hook

day-078-seventy-eight-20230526-TaskOA任务管理系统-其它Hook TaskOA任务管理系统 对话弹框Modal。 在React项目中&#xff0c;如果遇到表单操作&#xff0c;如果不使用antd中的组件&#xff0c;自己去开发的步骤: <div><label>任务描述&#xff1a;</label&…

【MySQL】- 02MySQL explain执行

目录 1.使用explain语句去查看分析结果2.MYSQL中的组合索引3.使用慢查询分析&#xff08;实用&#xff09;4.MYISAM和INNODB的锁定explain用法详解关于MySQL执行计划的局限性&#xff1a;备注&#xff1a; 1.使用explain语句去查看分析结果 如explain select * from test1 whe…

Aspose.OCR For NET 23.5 Crack

使用几行代码将光学字符识别 (OCR) 添加到您的 .NET 应用程序。 适用于 .NET 的 Aspose.OCRAspose.OCR 文档 Aspose.OCR for .NET 是一个功能强大但易于使用且具有成本效益的光学字符识别 API。有了它&#xff0c;您可以用不到 5 行代码将 OCR 功能添加到您的 .NET 应用程序…

C++_开发_项目开发编码规范

文章目录 1、头文件1.1、Self-contained 头文件&#xff1a;1.2、头文件中的 #define 的保护&#xff1a;1.3、尽可能地避免使用前置声明&#xff1a;1.4、内联函数&#xff1a;1.5、#include 的路径及顺序&#xff1a; 2、作用域&#xff1a;2.1、命名空间1、所有的代码应该定…

数据库数据量大了怎么办? 当然是分库分表,Sharding-JDBC了解一下?

Sharding-JDBC是一款基于JDBC规范的分布式数据库中间件&#xff0c;可以帮助Java应用轻松实现水平分库分表、读写分离等分布式数据库功能&#xff0c;并提供了方便易用、高可用、高性能的数据访问解决方案。本文将从以下几个方面进行详细介绍&#xff1a; Sharding-JDBC的原理…