当前位置: 首页 > news >正文

Python学习心得常用的内置函数

常用的内置函数:

1.数据类型转换函数:

描述说明

描述说明

bool(obj)

获取指定对象 obj 的布尔值

str(obj)

将指定对象 obj 转成字符串类型

int(x)

将 转成 int 类型

float(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)将 转成 int 类型:

注:字符串中的整数可以转成整数类型,但是,字符串中的浮点数不能转成整数类型,字符串的a字母也是不能转成整数类型;

#float类型和str类型转成int类型
print('-'*30,'float类型和str类型转成int类型','-'*30)
print(int(98.7)+int('90'))
#字符串中的整数可以转成整数类型
#但是,字符串中的浮点数不能转成整数类型
#字符串的a字母也是不能转成整数类型

 (4)将 转成 float 类型:

print('-'*30,'int,str类型转成float类型','-'*30)
print(float(90)+float('3,14'))

 2.常用的数学函数:

函数名称

描述说明

abs(x)

获取 的绝对值

divmod(x, y)

获取 与 的商和余数

max(sequence)

获取 sequence 的最大值

min(sequence)

获取 sequence 的最小值

sum(iter)

对可迭代对象进行求和运算

pow(x, y)

获取 的 次幂

round(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)

获取 的长度或 元素的个数

id(obj)

获取对象的内存地址

type(x)

获取 的数据类型

eval(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学习心得常用的内置函数

常用的内置函数&#xff1a; 1.数据类型转换函数&#xff1a; 描述说明 描述说明 bool(obj) 获取指定对象 obj 的布尔值 str(obj) 将指定对象 obj 转成字符串类型 int(x) 将 x 转成 int 类型 float(x) 将 x 转成 float 类型 list(sequence) 将序列转成列表类型 tu…...

VMware Workstation16安装Centos7以及静态IP设置

配置虚拟机操作系统 1.创建新的虚拟机 -> 自定义配置&#xff0c;下一步 2. 选择虚拟机硬件兼容性 -> 默认&#xff0c;下一步 3.安装客户机操作系统 -> 稍后安装操作系统&#xff0c;下一步 4.选择客户机操作系统 -> LinuxCentOS7 64 位&#xff0c;下一步 5.命名…...

【核心算法篇十九】《 DeepSeek因果推断:双重差分模型如何破解政策评估的「时空难题」》

一、当AB实验不可行时,我们该相信什么?(因果推断困局解析) 假设某城市推出「夜间地铁免费」政策,市长想知道这个政策是否真的提升了夜间经济。这时候你会发现: 1️⃣ 无法克隆城市:不能同时存在一个「实施政策」和「不实施政策」的平行宇宙 2️⃣ 数据混杂严重:疫情反…...

Token Embedding(词嵌入)和Positional Encoding(位置编码)的矩阵形状关系及转换过程

在从零开始构建一个小型字符级语言模型时,简化的实现步骤是:数据准备→模型架构设计→训练→评估与生成。模型架构设计阶段的流程如下: 图1 模型架构设计阶段的流程 包含了输入层、嵌入层、解码器层和输出层。其中在嵌入层中包括了Token Embedding(词嵌入)和Positional En…...

多个用户如何共用一根网线传输数据

前置知识 一、电信号 网线&#xff08;如以太网线&#xff09;中传输的信号主要是 电信号&#xff0c;它携带着数字信息。这些信号用于在计算机和其他网络设备之间传输数据。下面是一些关于网线传输信号的详细信息&#xff1a; 1. 电信号传输 在以太网中&#xff0c;数据是…...

U-Net 与深度学习的完美结合:图像分割的高效解决方案

1. 引言&#xff1a;U-Net背景及应用 1.1 U-Net的起源与发展 U-Net 是由 Olaf Ronneberger 和他的团队于2015年提出的卷积神经网络&#xff08;CNN&#xff09;架构。最初的设计目的是解决医学图像分割中的挑战&#xff0c;尤其是在有限的训练数据下如何实现准确的分割。 在…...

nginx ngx_http_module(9) 指令详解

nginx ngx_http_module(9) 指令详解 nginx 模块目录 nginx 全指令目录 一、目录 1.1 模块简介 ngx_http_uwsgi_module&#xff1a;uWSGI支持模块&#xff0c;允许Nginx与uWSGI服务器进行通信。uWSGI是一种应用服务器协议&#xff0c;广泛用于Python Web应用的部署。通过该…...

【从0做项目】Java搜索引擎(4)——性能优化~烧脑~~~

本篇文章将对项目搜索引擎&#xff08;1&#xff09;~&#xff08;3&#xff09;进行性能优化&#xff0c;包括测试&#xff0c;优化思路&#xff0c;优化前后对比 目录 一&#xff1a;文件读取 二&#xff1a;实现多线程制作索引 1&#xff1a;代码分析 2&#xff1a;代码…...

【HarmonyOS Next】鸿蒙应用进程和线程详解

【HarmonyOS Next】鸿蒙应用进程和线程详解 一、前言 进程的定义&#xff1a; 进程是系统进行资源分配的基本单位&#xff0c;是操作系统结构的基础。 在鸿蒙系统中&#xff0c;一个应用下会有三类进程&#xff1a; (1) 主进程&#xff0c; (2) ExtensionAbility进程&#xff…...

【前端ES】ECMAScript 2023 (ES14) 引入了多个新特性,简单介绍几个不为人知但却好用的方法

Array.prototype.toSorted() 返回一个新的已排序数组副本&#xff0c;不改变原数组。 let arr [5, 4, 2, 3, 1]; console.log(arr.toSorted()); // [1, 2, 3, 4, 5]Array.prototype.with() 允许根据索引修改数组中的单个元素&#xff0c;并返回新数组。 const arr ["…...

【EndNote】WPS 导入EndNote 21

写在前面&#xff1a;有没有人有激活码&#xff0c;跪求&#xff01; EndNote&#xff0c;在文献管理和文献引用方面很好用。写文章的时候&#xff0c;使用EndNote引入需要的文献会很方便。我目前用的WPS&#xff0c;想把EndNote的CWYW&#xff08;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 的技术演进

引言 自然语言处理&#xff08;NLP&#xff09;是 AI 领域的重要分支&#xff0c;而语言模型&#xff08;Language Model, LM&#xff09;是 NLP 的核心技术。语言模型经历了从 统计方法 到 RNN&#xff08;循环神经网络&#xff09;&#xff0c;再到 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.有效的字母异位词 题目链接&#xff1a;242.有效的字母异位词 文档讲解&#xff1a;代码随想录有效的字母异位词 视频讲解&#xff1a;LeetCode&#xff1a;有效的字母异位词 状态&#xff1a;学会了 思路&#xff1a; 数组其实是简单哈希表。 哈希表用来快速判断元素是否在…...

dify实现分析-rag-关键词索引的实现

概述 在dify中有两种构建索引的方式&#xff0c;一种是经济型&#xff0c;另一种是高质量索引&#xff08;通过向量数据库来实现&#xff09;。其中经济型就是关键词索引&#xff0c;通过构建关键词索引来定位查询的文本块&#xff0c;而关键词索引的构建是通过Jieba这个库来完…...

【小白学HTML5】一文讲清常用单位(px、em、rem、%、vw、vh)

html5中&#xff0c;常用的单位有px、em、rem、%、vw、vh&#xff08;不常用&#xff09;、cm、m等&#xff0c;这里主要讲解px、em、rem、%、vw。 学习了解&#xff1a;主流浏览器默认的字号&#xff1a;font-size:16px&#xff0c;无论用什么单位&#xff0c;浏览器最终计算…...

Fastgpt学习(5)- FastGPT 私有化部署问题解决

1.☺ 问题描述&#xff1a; Windows系统&#xff0c;本地私有化部署&#xff0c;postgresql数据库镜像日志持续报错" data directory “/var/lib/postgresql/data” has invalid permissions "&#xff0c;“ DETAIL: Permissions should be urwx (0700) or urwx,gr…...

web vue 项目 Docker化部署

Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段&#xff1a; 构建阶段&#xff08;Build Stage&#xff09;&#xff1a…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时&#xff0c;与数据库的交互无疑是核心环节。虽然传统的数据库操作方式&#xff08;如直接编写SQL语句与psycopg2交互&#xff09;赋予了我们精细的控制权&#xff0c;但在面对日益复杂的业务逻辑和快速迭代的需求时&#xff0c;这种方式的开发效率和可…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时&#xff0c;没有加载所有类库。插件运行过程中用到某个类库&#xff0c;会从CAD的安装目录找&#xff0c;找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库&#xff0c;就用插件程序加载进…...

【 java 虚拟机知识 第一篇 】

目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...