【Python数据分析】Python常用内置函数(一)
🎉欢迎来到Python专栏~Python常用内置函数(一)
- ☆* o(≧▽≦)o *☆嗨~我是小夏与酒🍹
- ✨博客主页:小夏与酒的博客
- 🎈该系列文章专栏:Python学习专栏
- 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏
- 📜 欢迎大家关注! ❤️

🎉 目录-Python常用内置函数(一)
- 一、说明
- 二、类型转换
- 三、最大值、最小值
- 四、元素数量、求和
- 五、排序、逆序

一、说明
Python技能树:Python入门技能树。
版本:Python 3.10。
IDE:PyCharm。
参考书籍:《Python数据分析、挖掘与可视化》。

基础文章:
1、【Python】Python基础知识总结。
2、【Python】PyCharm中调用另一个文件的函数或类。
3、【Python数据分析】Python基础知识篇。
4、【Python数据分析】Python基本数据类型。
二、类型转换
1、int()、float()、complex()
int()用来把浮点数转换成整数,或者把整数字符串按指定进制转换为十进制整数(如果不指定进制,则直接把字符串转换为十进制整数)。
float()用来将其他类型数据转换为浮点数。
complex()用来生成复数。
print(int(3.5)) # 获取浮点数的整数部分
print(int('1234')) # 把整数字符串转换为整数
print(int('1111',2)) # 把1111看作二进制数,转换为十进制数
print(int('1111',8)) # 把1111看作八进制数,转换为十进制数
print(int('1111',16)) # 把1111看作十六进制数,转换为十进制数
print(int(' 9\n')) # 自动忽略字符串的两个空白字符
print(float('3.1415926535')) # 把字符串转换为浮点数
print(float('-inf')) # 负无穷大
print(complex(3,4)) # 复数
print(complex(6j)) # 复数
print(complex('3')) # 复数# 运行结果:
3
1234
15
585
4369
9
3.1415926535
-inf
(3+4j)
6j
(3+0j)
2、bin()、oct()、hex()
bin()将任意进制数转换为二进制数。
oct()将任意进制数转换为八进制数。
hex()将任意进制数转换为十六进制数。
print(bin(123)) # 将整数转换为二进制
print(oct(123)) # 将整数转换为八进制
print(hex(123)) # 将整数转换为十六进制# 运行结果:
0b1111011
0o173
0x7b
3、ord()、chr()、str()
ord()用来返回单个字符的Unicode编码。
chr()用来返回Unicode编码对应的字符。
str()将任意类型参数整体转换为字符串。
print(ord('a')) # 返回字符的ASCII码
print(ord('夏')) # 返回汉字字符的Unicode编码
print(chr(65)) # 返回指定ASCII码对应的字符
print(chr(22799)) # 返回指定Unicode编码对应的汉字
print(str([1,2,3])) # 把列表转换为字符串# 运行结果:
97
22799
A
夏
[1, 2, 3]
4、list()、tuple()、dict()、set()
list()用来把其他类型的数据转为为列表或创建空列表。
tuple()用来把其他类型的数据转为为元组或创建空元组。
dict()用来把其他类型的数据转为为字典或创建空字典。
set()用来把其他类型的数据转为为集合或创建空集合。
print(list(),tuple(),dict(),set())a = {1,2,3,4}
print(list(a),tuple(a))lst = [1,1,1,2,3,4,4,5]
print(tuple(lst))
print(set(lst)) # 在转换为集合时会自动去除重复的元素# list()会把字符串中的每个字符都转换为列表中的元素
print(list(str(lst)))# tuple()、set()函数也具有类似list()的特点
print(dict(name='Xiao',sex='Male',age=25))# 运行结果:
[] () {} set()
[1, 2, 3, 4] (1, 2, 3, 4)
(1, 1, 1, 2, 3, 4, 4, 5)
{1, 2, 3, 4, 5}
['[', '1', ',', ' ', '1', ',', ' ', '1', ',', ' ', '2', ',', ' ', '3', ',', ' ', '4', ',', ' ', '4', ',', ' ', '5', ']']
{'name': 'Xiao', 'sex': 'Male', 'age': 25}
5、eval()
eval()用来计算字符串或字节串的值,也可以用来实现类型转换:还原字符串中数据的实际类型。
print(eval('3+4j')) # 对字符串求值得到复数
print(eval('5**2')) # 计算表达式5**2的值
print(eval('[1,2,3]')) # 对字符串求值得到列表
print(eval('{1,2,3}')) # 对字符串求值得到集合# 运行结果:
(3+4j)
25
[1, 2, 3]
{1, 2, 3}
三、最大值、最小值
max()用于计算序列中所有元素的最大值。
min()用于计算序列中所有元素的最小值。
参数可以是列表、元组、字典、集合或其他包含有限个元素的可迭代对象。
data = [1,2,3,4,5,72,-23,0,29]
print(data)# 对列表中的元素直接比较大小,输出最大、最小元素
print(max(data))
print(min(data))# 返回转换成字符串之后最大的元素
print(max(data,key=str))data = ['1','2122','3','4','5','72','-23','0','29']
print(max(data))# 返回长度最长的字符串
print(max(data,key=len))data = ['abcd','Abc','cd','ahdsei']
# 最大的字符串
print(max(data))# 长度最大的字符串
print(max(data,key=len))# 全部转换为小写之后最大的字符串
print(max(data,key=str.lower))data = [1,1,1,2,2,3,3,4,5,6,1,2,4,2,4,1,5]
# 出现次数最多的元素
print(max(set(data),key=data.count))# 最大元素的位置,列表方法__getitem+_()用于获取指定位置的值
print(max(range(len(data)),key=data.__getitem__))# 运行结果:
[1, 2, 3, 4, 5, 72, -23, 0, 29]
72
-23
72
72
2122
cd
ahdsei
cd
1
9
四、元素数量、求和
len()用来计算序列长度,即元素个数。
sum()用来计算序列中所有元素之和,一般要求序列中所有元素类型相同并且支持加法运算。
data = [1,2,3,4]# 列表中元素的个数
print(len(data))# 所有元素之和
print(sum(data))# 运行结果:
4
10
data = (1,2,3)
print(len(data))
print(sum(data))data = {1,2,3}
print(len(data))
print(sum(data))data = 'Readability counts.'
print(len(data))data = {97:'a',65:'A',48:'0'}
print(len(data))
print(sum(data)) # 对字典的”键“求和# 运行结果:
3
6
3
6
19
3
210
五、排序、逆序
1、sorted()
内置函数sorted()可以对列表、元组、字典、集合或其他可以迭代对象进行排序并返回新列表,支持使用key参数指定排序规则,key参数的值可以是函数、lambda表达式等可调用对象。
可以使用reverse参数指定是升序(reverse = False)排序还是降序(reverse = True)排序。如果不指定的话,默认为升序排序。
from random import shuffledata = list(range(20))
shuffle(data) # 随机打乱顺序
print(data)print(sorted(data)) # 升序排序print(sorted(data,key=str)) # 按转换成字符串后的大小升序排序print(sorted(data,key=str,reverse=True)) # 降序排序# 运行结果:
[10, 9, 12, 16, 17, 8, 11, 18, 14, 4, 7, 6, 5, 0, 3, 1, 13, 2, 15, 19]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[0, 1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2, 3, 4, 5, 6, 7, 8, 9]
[9, 8, 7, 6, 5, 4, 3, 2, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 1, 0]
2、reversed()
内置函数
reversed()可以对可迭代对象(生成器对象和就具有惰性求值特殊性的zip、map、filter、enumerate、reversed等类似对象除外)进行翻转并返回可迭代的reversed对象。在使用该函数时应注意,reversed对象具有惰性求值特点,其中的元素只能使用一次,不支持使用内置函数len()计算元素个数,也不支持使用内置函数reversed()再次翻转。
from random import shuffledata = list(range(20)) # 创建列表
shuffle(data) # 随机打乱顺序
print(data)reversedData = reversed(data) # 生成reversed对象
print(reversedData)
print(list(reversedData)) # 根据reversed对象得到列表
print(tuple(reversedData)) # 空元组,reversed对象中元素只能使用一次# 运行结果:
[13, 11, 3, 1, 10, 8, 15, 19, 4, 17, 2, 5, 14, 12, 7, 18, 6, 9, 0, 16]
<list_reverseiterator object at 0x00000154FF3853F0>
[16, 0, 9, 6, 18, 7, 12, 14, 5, 2, 17, 4, 19, 15, 8, 10, 1, 3, 11, 13]
()

🧸结尾
- ❤️ 感谢您的支持和鼓励! 😊🙏
- 📜您可能感兴趣的内容:
- 【Python】Python实现串口通信(Python+Stm32)
- 【FPGA】串口通信讲解-状态机判断数据值
- 【Arduino TinyGo】【最新】使用Go语言编写Arduino-环境搭建和点亮LED灯
- 【全网首发开源教程】【Labview机器人仿真与控制】Labview与Solidworks多路支配关系-四足爬行机器人仿真与控制
相关文章:
【Python数据分析】Python常用内置函数(一)
🎉欢迎来到Python专栏~Python常用内置函数(一) ☆* o(≧▽≦)o *☆嗨~我是小夏与酒🍹 ✨博客主页:小夏与酒的博客 🎈该系列文章专栏:Python学习专栏 文章作者技术和水平有限,如果文…...
OpenCV图像处理-图像分割-MeanShift
MeanShift 1. 基本概念2.代码示例 1. 基本概念 MeanShift严格说来并不是用来对图像进行分割的,而是在色彩层面的平滑滤波。它会中和色彩分布相近的颜色,平滑色彩细节,侵蚀掉面积较小的的颜色区域,它以图像上任意一点P为圆心&…...
【Rust 基础篇】Rust Trait 实现:灵活的接口抽象
导言 Rust是一种以安全性和高效性著称的系统级编程语言,其设计哲学是在不损失性能的前提下,保障代码的内存安全和线程安全。为了实现这一目标,Rust引入了"所有权系统"、"借用检查器"等特性,有效地避免了常见…...
【嵌入式Linux项目】基于Linux的全志H616开发板智能家居项目(语音控制、人脸识别、安卓APP和PC端QT客户端远程操控)有视频功能展示
目录 一、功能需求 二、开发环境 1、硬件: 2、软件: 3、引脚分配: 三、关键点 1、设计模式之工厂模式 2、wiringPi库下的相关硬件操作函数调用 3、语音模块的串口通信 4、线程 5、摄像头的实时监控和拍照功能 6、人脸识别 四、编…...
ElasticSearch基础篇-条件查询与映射
ElasticSearch基础篇二 条件查询 GET http://10.192.193.98:9200/shopping/_search?qtitle:小米手机q:代表查询条件 响应结果 {"took": 772,"timed_out": false,"_shards": {"total": 1,"successful": 1,"skipped…...
大模型部署框架 FastLLM 实现细节解析
0x0. 前言 接着 大模型部署框架 FastLLM 简要解析 这篇文章首先梳理了一下FastLLM的调用链和关键的数据结构,然后解析了 FastLLM 的一些实现细节和CPU/GPU后端实现采用的优化技巧。 0x1. 调用链和数据结构解析 以chatglm-6b的支持为例,函数入口在 htt…...
Flutter ios真机调试连接断开后应用闪退
使用ios真机调试的时候,能正常打开应用,但是当数据线断开连接的时候,应用就会关闭,重新打开就会闪退。 原因是flutter默认在开发过程中使用debug模式编译 只需要将debug选择为release 重新编译就行。...
序列化,反序列化之实例
别怕,我一直陪着你 一.知识1.魔术方法 二.实例1.绕过__wakeup, private2.php://filter, data://, __tostring3. 一.知识 1.魔术方法 __construct() 当一个对象创建时自动调用 __destruct() 当对象被销毁时自动调用 (php绝大多数情况下会自动调用销毁对象) __sleep…...
2022年全国职业院校技能大赛(高职组)“软件测试”赛项竞赛任务书
2022年全国职业院校技能大赛(高职组) “软件测试”赛项竞赛任务书 2022年7月 一、竞赛时间、内容及成绩组成 (一)竞赛时间 本阶段竞赛时间共为8小时,参赛选手自行安排任务进度,休息、饮水、如厕等不设专…...
第18节:R语言分析:临床安全性数据的数据分析
临床安全性数据的数据分析 背景 医疗器械临床试验中收集的数据的主要组成部分是关于患者安全的。 不良事件被定义为“受试者、使用者或其他人的任何不良医疗事件、非预期疾病或伤害,或不良临床体征(包括异常实验室发现),无论是否与研究医疗器械相关”。 收集并用于此数据…...
36.悬浮板
悬浮板 html部分 <div class"container"><div class"square"></div> </div>css部分 *{margin: 0;padding: 0; } body{background-color: #111;height: 100vh;overflow: hidden;display: flex;justify-content: center;align-it…...
BLE基础理论/Android BLE开发示例
参考:https://blog.csdn.net/qq_36075612/article/details/127739150?spm1001.2014.3001.5502 参考: https://blog.csdn.net/qq_36075612/article/details/122772966?spm1001.2014.3001.5502 目录 蓝牙的分类传统蓝牙低功耗蓝牙 蓝牙专业词汇ÿ…...
rocketmq 5.13任意时间延迟消息
原理是采用timewhile 实现的,源码分析可以参考 https://blog.csdn.net/sinat_14840559/article/details/129266105 除了useDelayLevel 已经默认改为false private boolean useDelayLevel false;官方示意代码在public class TimerMessageProducer for (int i 0;…...
小程序picker 在苹果手机不兼容 bug,按month时在iPhone 显示不正确及自动定位时间问题
如下图:点击弹出时间列表:日历控件点击选择显示1年1月 解决: 加上起始时间字段 <picker mode"date" value"{{date}}" start"1970-09-01" end"2030-09-01"></picker> 问题二: 还是&a…...
区块链服务网络的顶层设计与应用实践
日前,2023全球数字经济大会专题论坛:Web3.0发展趋势专题论坛暨2023区块链、元宇宙蓝皮书发布会在北京举行。本次论坛上隆重发布了《中国区块链发展报告(2023)》,对我国区块链行业在2022年的发展状况进行了总结梳理&…...
tomcat日志输出乱码
在Tomcat中,默认的字符编码可能导致应用参数日志出现乱码问题。这通常发生在接收来自客户端的请求参数,并将其记录到日志文件时。 Tomcat默认使用平台的默认字符编码,这可能是不稳定的,特别是当应用程序运行在不同的操作系统上时…...
Form1单例模式与互斥锁
一、使用mutex来解决。 如何让窗体Form1也是一个单例模式呢? 在窗体项目中找到Program.cs,双击。找到入口点,更改如下: [STAThread]private static void Main(){string mutexName "MyapplicatonMutexApp1121";usin…...
MySQL | 常用命令示例
MySQL | 常用命令示例 一、启停MySQL数据库服务二、连接MySQL数据库三、创建和管理数据库四、创建和管理数据表五、数据备份和恢复六、查询与优化 MySQL是一款常用的关系型数据库管理系统,广泛应用于各个领域。在使用MySQL时,我们经常需要编写一些常用脚…...
常见网关对比
常见网关对比 目前常见的开源网关大致上按照语言分类有如下几类: Nginxlua :OpenResty、Kong、Orange、Abtesting gateway 等 Java :Zuul/Zuul2、Spring Cloud Gateway、Kaazing KWG、gravitee、Dromara soul 等 Go :Janus、fa…...
机器学习动量优化算法笔记
动量优化算法(Momentum Optimization)是一种常用于训练神经网络的优化算法。它通过模拟物体在惯性作用下的运动来加速梯度下降过程,从而加快神经网络的收敛速度并提高训练效率。 在梯度下降算法中,每次更新权重时都是根据当前批次…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...
Qemu arm操作系统开发环境
使用qemu虚拟arm硬件比较合适。 步骤如下: 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载,下载地址:https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...
关于uniapp展示PDF的解决方案
在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项: 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库: npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...
如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...

