Python学习心得常用的内置函数
常用的内置函数:
1.数据类型转换函数:
| 描述说明 | 描述说明 |
| bool(obj) | 获取指定对象 obj 的布尔值 |
| str(obj) | 将指定对象 obj 转成字符串类型 |
| int(x) | 将 x 转成 int 类型 |
| float(x) | 将 x 转成 float 类型 |
| list(sequence) | 将序列转成列表类型 |
| tuple(sequence) | 将序列转成元组类型 |
| set(sequence) | 将序列转成集合类型 |
数据类型转换函数的使用:
(1)获取指定对象的布尔值:
print('非空字符串的布尔值:',bool('hello'))
print('空字符串的布尔值:',bool(''))
print('空列表的布尔值:',bool([]))
print('空列表的布尔值:',bool(list()))
print('空元组的布尔值:',bool(()))
print('空元组的布尔值:',bool(tuple()))
print('空集合的布尔值:',bool(set()))
print('空字典的布尔值:',bool({}))
print('空字典的布尔值:',bool(dict()))
print('-'*30)
print('非0整数的布尔值:',bool(789))
print('整数0的布尔值:',bool(0))
print('浮点数0.0的布尔值:',bool(0.0))
(2)将指定对象 obj 转成字符串类型:
#将其他类型转成字符串类型
lst=[10,20,30]
print(type(lst),lst)
s=str(lst)
print(type(s),s)
(3)将 x 转成 int 类型:
注:字符串中的整数可以转成整数类型,但是,字符串中的浮点数不能转成整数类型,字符串的a字母也是不能转成整数类型;
#float类型和str类型转成int类型
print('-'*30,'float类型和str类型转成int类型','-'*30)
print(int(98.7)+int('90'))
#字符串中的整数可以转成整数类型
#但是,字符串中的浮点数不能转成整数类型
#字符串的a字母也是不能转成整数类型
(4)将 x 转成 float 类型:
print('-'*30,'int,str类型转成float类型','-'*30)
print(float(90)+float('3,14'))
2.常用的数学函数:
| 函数名称 | 描述说明 |
| abs(x) | 获取 x 的绝对值 |
| divmod(x, y) | 获取 x 与 y 的商和余数 |
| max(sequence) | 获取 sequence 的最大值 |
| min(sequence) | 获取 sequence 的最小值 |
| sum(iter) | 对可迭代对象进行求和运算 |
| pow(x, y) | 获取 x 的 y 次幂 |
| round(x, d) | 对 x 进行保留 d 位小数,结果四舍五入 |
常用的数学函数的运用:
print('绝对值:',abs(100),abs(-100),abs(0))
print('商和余数:',divmod(13,4))
print('最大值:',max('hello'))
print('最大值:',max(111,222,333))
print('最小值:',min('hello'))
print('最小值:',min(111,222,333))print('求和:',sum([10,35,45]))
#直接使用内置函数就可以进行累加计算了,之前只能是使用遍历函数进行计算列表的和
print('x的y次幂:',pow(2,3))#四舍五入
print(round(3.1415926))#当round只写了一个参数时,进行保留整数的操作
print(round(3.9415926))#4,round保留整数是四舍五入的操作
print(round(3.1415926,2))#如果想让round保留两位小数时,就要在第二个参数那写上一个2
print(round(313.15926,-1))#负数会对整数部分从个位进行四舍五入
3.常用的迭代器函数:
迭代器函数是用来操作可迭代对象的,比如说字符串、列表和元组都是可迭代对象,他们都可以使用for循环进行遍历操作。
| 函数名称 | 操作说明 |
| sorted(iter) | 对可迭代对象进行排序 |
| reversed(sequence) | 反转序列生成新的迭代器对象 |
| zip(iter1, iter2) | 将 iter1 与 iter2 打包成元组并返回一个可迭代的 zip 对象 |
| enumerate(iter) | 根据 iter 对象创建一个 enumerate 对象 |
| all(iter) | 判断可迭代对象 iter 中所有元素的布尔值是否都为 True |
| any(iter) | 判断可迭代对象 iter 中所有元素的布尔值是否都为 False |
| next(iter) | 获取迭代器的下一个元素 |
| filter(function, iter) | 通过指定条件过滤序列并返回一个迭代器对象 |
| map(function, iter) | 通过函数 function 对可迭代对象 iter 的操作返回一个迭代器对象 |
常用的迭代器函数的运用:
lst=[1,23,4,5,6,7,8]
#排序操作
asc_lst=sorted(lst)#升序
desc_lst=sorted(lst,reverse=True)#降序
print('原列表:',lst)
print('升序:',asc_lst)
print('降序:',desc_lst)#reversed反向
new_lst=reversed(lst)
print(type(new_lst))#<class 'list_reverseiterator'>说明不是列表类型
print(list(new_lst))#需要转成列表类型才可#zip
x=['a','b','c','d']
y=[10,20,30,40,50]
zipobj=zip(x,y)
print(type(zipobj))
#print(list(zipobj))
#zip以短的为标准,最后输出的类型为元组类型。#enumerate
enum=enumerate(y,start=1)
print(type(enum))#<class 'enumerate'>
print(tuple(enum))#all
lst2=[10,20,'',30]
print(all(lst2))#False,空字符串的布尔值是False
print(all(lst))#True,列表中元素都为True结果才为True#any
print(any(lst2))#True,只要有一个为True结果就为True;False,只有元素都为False时,才为False#next
print(next(zipobj))#执行一次就遍历出一个元素
print(next(zipobj))
print(next(zipobj))#filter
def fun(num):return num%2==1obj=filter(fun,range(10))#将range中的0-9数都进行一次函数操作
print(list(obj))#[1, 3, 5, 7, 9]def upper(s):return s.upper()
new_lst2=['hello','world','python']
obj2=map(upper,new_lst2)
print(list(obj2))
4.常用的其他内置函数:
| 函数名称 | 描述说明 |
| format(value, format_spec) | 将 value 以 format_spec 格式进行显示 |
| len(s) | 获取 s 的长度或 s 元素的个数 |
| id(obj) | 获取对象的内存地址 |
| type(x) | 获取 x 的数据类型 |
| eval(s) | 执行 s 这个字符串所表示的 Python 代码 |
常用的其他函数的运用:
#format
print(format(3.14,'20'))#数值型默认右对齐
print(format('hello','20'))#字符型默认是左对齐
print(format('hello','*<20'))#填充为*并进行左对齐
print(format('hello','*>20'))#填充为*并进行右对齐
print(format('hello','*^20'))#填充为*并进行居中对齐print(format(3.1415926,'.2f'))#3.14
print(format(20,'b'))
print(format(20,'o'))
print(format(20,'x'))
print(format(20,'X'))print(len('helloworld'))
print(len([10,20,30,40]))print(id(10))
print(id('helloworld'))#用于查询内存地址
print(type('hello'),type(10))print(eval('10+30'))#eval是去掉字符串左右的符号
print(eval('20>30'))
相关文章:
Python学习心得常用的内置函数
常用的内置函数: 1.数据类型转换函数: 描述说明 描述说明 bool(obj) 获取指定对象 obj 的布尔值 str(obj) 将指定对象 obj 转成字符串类型 int(x) 将 x 转成 int 类型 float(x) 将 x 转成 float 类型 list(sequence) 将序列转成列表类型 tu…...
VMware Workstation16安装Centos7以及静态IP设置
配置虚拟机操作系统 1.创建新的虚拟机 -> 自定义配置,下一步 2. 选择虚拟机硬件兼容性 -> 默认,下一步 3.安装客户机操作系统 -> 稍后安装操作系统,下一步 4.选择客户机操作系统 -> LinuxCentOS7 64 位,下一步 5.命名…...
【核心算法篇十九】《 DeepSeek因果推断:双重差分模型如何破解政策评估的「时空难题」》
一、当AB实验不可行时,我们该相信什么?(因果推断困局解析) 假设某城市推出「夜间地铁免费」政策,市长想知道这个政策是否真的提升了夜间经济。这时候你会发现: 1️⃣ 无法克隆城市:不能同时存在一个「实施政策」和「不实施政策」的平行宇宙 2️⃣ 数据混杂严重:疫情反…...
Token Embedding(词嵌入)和Positional Encoding(位置编码)的矩阵形状关系及转换过程
在从零开始构建一个小型字符级语言模型时,简化的实现步骤是:数据准备→模型架构设计→训练→评估与生成。模型架构设计阶段的流程如下: 图1 模型架构设计阶段的流程 包含了输入层、嵌入层、解码器层和输出层。其中在嵌入层中包括了Token Embedding(词嵌入)和Positional En…...
多个用户如何共用一根网线传输数据
前置知识 一、电信号 网线(如以太网线)中传输的信号主要是 电信号,它携带着数字信息。这些信号用于在计算机和其他网络设备之间传输数据。下面是一些关于网线传输信号的详细信息: 1. 电信号传输 在以太网中,数据是…...
U-Net 与深度学习的完美结合:图像分割的高效解决方案
1. 引言:U-Net背景及应用 1.1 U-Net的起源与发展 U-Net 是由 Olaf Ronneberger 和他的团队于2015年提出的卷积神经网络(CNN)架构。最初的设计目的是解决医学图像分割中的挑战,尤其是在有限的训练数据下如何实现准确的分割。 在…...
nginx ngx_http_module(9) 指令详解
nginx ngx_http_module(9) 指令详解 nginx 模块目录 nginx 全指令目录 一、目录 1.1 模块简介 ngx_http_uwsgi_module:uWSGI支持模块,允许Nginx与uWSGI服务器进行通信。uWSGI是一种应用服务器协议,广泛用于Python Web应用的部署。通过该…...
【从0做项目】Java搜索引擎(4)——性能优化~烧脑~~~
本篇文章将对项目搜索引擎(1)~(3)进行性能优化,包括测试,优化思路,优化前后对比 目录 一:文件读取 二:实现多线程制作索引 1:代码分析 2:代码…...
【HarmonyOS Next】鸿蒙应用进程和线程详解
【HarmonyOS Next】鸿蒙应用进程和线程详解 一、前言 进程的定义: 进程是系统进行资源分配的基本单位,是操作系统结构的基础。 在鸿蒙系统中,一个应用下会有三类进程: (1) 主进程, (2) ExtensionAbility进程ÿ…...
【前端ES】ECMAScript 2023 (ES14) 引入了多个新特性,简单介绍几个不为人知但却好用的方法
Array.prototype.toSorted() 返回一个新的已排序数组副本,不改变原数组。 let arr [5, 4, 2, 3, 1]; console.log(arr.toSorted()); // [1, 2, 3, 4, 5]Array.prototype.with() 允许根据索引修改数组中的单个元素,并返回新数组。 const arr ["…...
【EndNote】WPS 导入EndNote 21
写在前面:有没有人有激活码,跪求! EndNote,在文献管理和文献引用方面很好用。写文章的时候,使用EndNote引入需要的文献会很方便。我目前用的WPS,想把EndNote的CWYW(Cite While You Write&#…...
网上购物|基于SprinBoot+vue的网上购物系统(源码+数据库+文档)
网上购物系统目录 基于SprinBootvue的网上购物 一、前言 二、系统设计 三、系统功能设计 5.1 管理员功能实现 5.1.1 论坛管理 5.1.2 商品管理 5.1.3 商品评价管理 5.1.4 商品订单管理 5.2 用户功能实现 5.2.1 商品信息 5.2.2 确认下单 5.2.3 商品订单 5.2.4 购物…...
AI 语言模型发展史:统计方法、RNN 与 Transformer 的技术演进
引言 自然语言处理(NLP)是 AI 领域的重要分支,而语言模型(Language Model, LM)是 NLP 的核心技术。语言模型经历了从 统计方法 到 RNN(循环神经网络),再到 Transformer 的演进&…...
Pycharm中查找与替换
1、Edit -> Find -> Find 在当前文件中查找 2、Edit -> Find -> Find in Files 在所有文件中查找 3、Edit -> Find -> Replace 在当前文件中执行替换 4、Edit -> Find -> Replace in Files 在所有文件中执行替换...
有向图的强连通分量: Kosaraju算法和Tarjan算法详解
在上一篇文章中, 我们了解了图的最小生成树算法. 本节我们来学习 图的强连通分量(Strongly Connected Component, SCC) 算法. 什么是强连通分量? 在 有向图 中, 若一组节点内的任意两个节点都能通过路径互相到达(例如 A → B A \rightarrow B A→B 且 B → A B \rightarro…...
mac相关命令
显示和隐藏usr等隐藏文件文件 terminal输入: defaults write com.apple.Finder AppleShowAllFiles YESdefaults write com.apple.Finder AppleShowAllFiles NO让.bashrc每次启动shell自动生效 编辑vim ~/.bash_profile 文件, 加上 if [ -f ~/.bashrc ]; then. ~/.bashrc fi注…...
代码随想录算法训练营第六天| 242.有效的字母异位词 、349. 两个数组的交集、202. 快乐数 、1. 两数之和
242.有效的字母异位词 题目链接:242.有效的字母异位词 文档讲解:代码随想录有效的字母异位词 视频讲解:LeetCode:有效的字母异位词 状态:学会了 思路: 数组其实是简单哈希表。 哈希表用来快速判断元素是否在…...
dify实现分析-rag-关键词索引的实现
概述 在dify中有两种构建索引的方式,一种是经济型,另一种是高质量索引(通过向量数据库来实现)。其中经济型就是关键词索引,通过构建关键词索引来定位查询的文本块,而关键词索引的构建是通过Jieba这个库来完…...
【小白学HTML5】一文讲清常用单位(px、em、rem、%、vw、vh)
html5中,常用的单位有px、em、rem、%、vw、vh(不常用)、cm、m等,这里主要讲解px、em、rem、%、vw。 学习了解:主流浏览器默认的字号:font-size:16px,无论用什么单位,浏览器最终计算…...
Fastgpt学习(5)- FastGPT 私有化部署问题解决
1.☺ 问题描述: Windows系统,本地私有化部署,postgresql数据库镜像日志持续报错" data directory “/var/lib/postgresql/data” has invalid permissions ",“ DETAIL: Permissions should be urwx (0700) or urwx,gr…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏
一、引言 在深度学习中,我们训练出的神经网络往往非常庞大(比如像 ResNet、YOLOv8、Vision Transformer),虽然精度很高,但“太重”了,运行起来很慢,占用内存大,不适合部署到手机、摄…...
MyBatis中关于缓存的理解
MyBatis缓存 MyBatis系统当中默认定义两级缓存:一级缓存、二级缓存 默认情况下,只有一级缓存开启(sqlSession级别的缓存)二级缓存需要手动开启配置,需要局域namespace级别的缓存 一级缓存(本地缓存&#…...
mac:大模型系列测试
0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何,是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试,是可以跑通文章里面的代码。训练速度也是很快的。 注意…...
