Python 3 学习(二)—— 常用内置函数(网上收集整理)

2023-10-30 14:32

本文主要是介绍Python 3 学习(二)—— 常用内置函数(网上收集整理),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 输入输出
  • 数学运算
  • 类型转换
  • 序列操作
  • 函数操作
  • 其他
  • Python 3 所有内置函数

输入输出

  1. print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False) 打印输出。print 在 Python3.x 是一个函数,但在 Python2.x 版本不是一个函数,只是一个关键字。
  2. input([prompt]) 如果存在 prompt 实参,则将其写入标准输出,末尾不带换行符。接下来,该函数从输入中读取一行,将其转换为字符串(除了末尾的换行符)并返回。当读取到 EOF 时,则触发 EOFError

数学运算

  1. abs(x) 返回一个数的绝对值。实参可以是整数或浮点数。如果实参是一个复数,返回它的模。
  2. divmod(a, b) 它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。对于混合操作数类型,适用双目算术运算符的规则。
    • 对于整数,结果和 (a // b, a % b) 一致。
    • 对于浮点数,结果是 (q, a % b)q 通常是 math.floor(a / b) 但可能会比 1 小。
    • 在任何情况下, q * b + a % ba 基本相等;如果 a % b 非零,它的符号和 b 一样,并且 0 <= abs(a % b) < abs(b)
  3. max(iterable, *[, key, default]) / max(arg1, arg2, *args[, key]) 返回可迭代对象中最大的元素,或者返回两个及以上实参中最大的。
  4. min(iterable, *[, key, default]) / min(arg1, arg2, *args[, key]) 返回可迭代对象中最小的元素,或者返回两个及以上实参中最小的。
  5. pow(x, y[, z]) 返回 xy 次幂;如果 z 存在,则对 z 取余(比直接 pow(x, y) % z计算更高效)。两个参数形式的 pow(x, y) 等价于幂运算符: x**y
  6. round(number[, ndigits]) 对浮点数进行四舍五入求值。如果可选参数省略或为None,则返回其输入的最接近的整数。
  7. sum(iterable[, start]) 对可迭代对象求和。可选参数为指定相加的参数,如果没有设置这个值,默认为0。

类型转换

  1. class bool([x]) 将给定参数转换为布尔类型,如果没有参数,返回 False。
  2. class int([x]) / class int(x, base=10) 返回一个使用数字或字符串 x 生成的整数对象,或者没有实参的时候返回 0 。如果 x 不是数字,或者有 base 参数,x 必须是字符串、bytes、表示进制为 base 的 整数文字 的 bytearray 实例。该文字前可以有 +- (中间不能有空格),前后可以有空格。
  3. class float([x]) 返回从数字或字符串 x 生成的浮点数。
  4. class str(object='') / class str(object=b'', encoding='utf-8', errors='strict') 返回一个 str 版本的 object
  5. bin(x) / oct(x) / hex(x) 将一个十进制数字转化成一个二进制 / 八进制 / 十六进制数字的字符串。
  6. chr(i) 返回 Unicode 码位为整数 i 的字符的字符串格式。例如,chr(97) 返回字符串 'a'chr(8364) 返回字符串 '€'。这是 ord() 的逆函数。
  7. ord() 对表示单个 Unicode 字符的字符串,返回代表它 Unicode 码点的整数。例如 ord('a') 返回整数 97ord('€') (欧元符号)返回 8364 。这是 chr() 的逆函数。
  8. class list([iterable]) 将元组或字符串转换为列表。
  9. tuple([iterable]) 将列表转换为元组。
  10. class dict(**kwarg) / class dict(mapping, **kwarg) / class dict(iterable, **kwarg) 创建一个新的字典。
  11. class set([iterable]) 创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
  12. iter(object[, sentinel]) 返回一个 iterator 对象。根据是否存在第二个实参,对第一个实参的解释是非常不同的。
    • 如果没有第二个实参,object 必须是支持迭代协议(有 iter() 方法)的集合对象,或必须支持序列协议(有 getitem() 方法,且数字参数从 0 开始)。如果它不支持这些协议,会触发 TypeError。
    • 如果有第二个实参 sentinel,那么 object 必须是可调用的对象。这种情况下生成的迭代器,每次迭代调用它的 next() 方法时都会不带实参地调用 object;如果返回的结果是 sentinel 则触发 StopIteration,否则返回调用结果。

序列操作

  1. all(iterable) 如果 iterable 的所有元素为真(或迭代器为空),返回 True

  2. any(iterable) 如果iterable 的任一元素为真则返回 True 。如果迭代器为空,返回 False

  3. len(s) 返回对象的长度(元素个数)。实参可以是序列(如 string、bytes、tuple、list 或 range 等)或集合(如 dictionary、set 或 frozen set 等)。

  4. sorted(iterable, *, key=None, reverse=False) 对所有可迭代的对象进行排序操作,返回重新排序的列表。

  5. reversed(seq) 返回一个反转的迭代器。

  6. class slice(stop) / class slice(start, stop[, step]) 返回一个切片对象,主要用在切片操作函数里的参数传递。

  7. zip(*iterables) 将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。
    如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

  8. range(stop) / range(start, stop[, step]) 返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。

    • Python3 list() 函数是对象迭代器,可以把 range() 返回的可迭代对象转为一个列表,返回的变量类型为列表。
    • Python2 range() 函数返回的是列表。
  9. enumerate(iterable, start=0) 返回一个枚举对象。iterable 必须是一个序列,或 iterator,或其他支持迭代的对象。 enumerate() 返回的迭代器的 __next__() 方法返回一个元组,里面包含一个计数值(从 start 开始,默认为 0)和通过迭代 iterable 获得的值。

     >>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']>>> list(enumerate(seasons))[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]>>> list(enumerate(seasons, start=1))[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')] 
    

函数操作

  1. map(function, iterable, ...) 产生一个将 function 应用于迭代器中所有元素并返回结果的迭代器。
    如果传递了额外的 iterable 实参,function 必须接受相同个数的实参,并使用所有迭代器中并行获取的元素。当有多个迭代器时,最短的迭代器耗尽则整个迭代结束。

     def square(x):return x ** 2list(map(square, [1, 2, 3, 4, 5]))	>>> [1, 4, 9, 16, 25]def lambda(x, y):return x + ylist(map(lambda, [1, 2, 3, 4, 5], [10, 20, 30])) >>> [11, 22, 33]
    
  2. filter(function, iterable) 返回 iterable 中执行函数 function 之后返回真的那些元素,构建一个新的迭代器。

    • iterable 可以是一个序列,一个支持迭代的容器,或一个迭代器。
    • 如果 functionNone ,则会假设它是一个身份函数,即 iterable 中所有返回假的元素会被移除。
    • 请注意, filter(function, iterable) 相当于一个生成器表达式,当 function 不是 None 的时候为 (item for item in iterable if function(item))functionNone 的时候为 (item for item in iterable if item)

其他

  1. exec(object[, globals[, locals]]) 这个函数支持动态执行 Python 代码。object 必须是字符串或者代码对象。详情参考。
  2. isinstance(object, classinfo)
    • 如果 object 实参是 classinfo 实参的实例,或者是(直接、间接或 虚拟)子类的实例,则返回 true。
    • 如果 object 不是给定类型的对象,函数始终返回 false。
    • 如果 classinfo 是对象类型(或多个递归元组)的元组,object 是其中的任何一个的实例则返回 true。
    • 如果 classinfo 既不是类型,也不是类型元组或类型的递归元组,那么会触发 TypeError 异常。
  3. type()
    • class type(object) 如果只有第一个参数则返回对象的类型;
    • class type(name, bases, dict) 三个参数返回新的类型对象。

isinstance()type() 区别:

  • type() 不会认为子类是一种父类类型,不考虑继承关系。
  • isinstance() 会认为子类是一种父类类型,考虑继承关系。

如果要判断两个类型是否相同推荐使用 isinstance()

Python 3 所有内置函数

完整的在这里,用到了会继续补充。

这篇关于Python 3 学习(二)—— 常用内置函数(网上收集整理)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/308578

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

常用的jdk下载地址

jdk下载地址 安装方式可以看之前的博客: mac安装jdk oracle 版本:https://www.oracle.com/java/technologies/downloads/ Eclipse Temurin版本:https://adoptium.net/zh-CN/temurin/releases/ 阿里版本: github:https://github.com/

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal