python3 中的内置函数
内置函数就是python给提供的,拿来直接用的函数,例如print ,input 等。
截至到python版本3.6.2 ,python 一共提供了68个内置函数,具体如下
本文将这68个内置函数综合整理分为12 大类,正在学习python基础的小伙伴大家一定不要错过,建议点赞收藏学习,同时欢迎各位大佬纠正错误,谢谢大家!
一,和数字相关
1,数据类型
bool:布尔型(True, False)
int: 整形(整数)
float:浮点型(小数)
complex : 复数
2,进制转换
bin() 将给的参数转换成为二进制
oct() 将给的参数转换成为八进制
hex() 将给的参数转换成为十六进制
""" 进制转换"""
print(bin(10)) # 十进制转二进制
print(oct(10)) # 十进制转八进制
print(hex(10)) # 十进制转十六进制
3,数学运算
abs() 返回绝对值
divmod() 返回商和余数
round() 四舍五入
pow(a, b) 求a的b次幂, 如果有三个参数,则求完全次幂后对第三个数取余
sum() 求和
min() 求最小值
max() 求最大值
""" 数学运算 """
print(abs(-65)) # 绝对值65
print(divmod(20, 3)) # 求商和余数:(6,2)
print(round(4.50)) # 五舍六入 : 4
print(round(4.51)) # 5
print(pow(10, 2, 3)) # 如果给了第三个参数, 表示最后取余: 1
print(sum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])) # 求和:55
print(min(5, 6, 7, 8, 9, 3, 2, 10)) # 求最小值 2
print(max(1, 2, 4, 5, 6, 8, 7, )) # 求最大值 8
二,和数据结构相关
1.序列
(1)列表和元组
list() 将一个可迭代对象转换成列表
tuple()将一个可迭代对象转换成元组
"""列表和元组"""
print(list((1, 2, 3, 4, 5, 6, 7, 8)))
print(type((list((1, 2, 3, 4, 5, 6, 7, 8)))))
print(tuple([1, 2, 3, 4, 5, 6, 7, 8]))
print(type((tuple([1, 2, 3, 4, 5, 6, 7, 8]))))
(2)相关内置函数
reversed()将一个序列翻转,返回翻转序列的迭代器
slice()列表的切片
"""相关的内置函数"""
lst = "你好呀"
lt = reversed(lst) # 不会改变原来列表,返回一个迭代器,设计上的一个规则
print((list(lt))) # ['呀', '好', '你']
lst = [1, 2, 3, 4, 5, 6, 7]
print(lst[1:3:1]) # [2,3]
s = slice(1, 3, 1) # 切片用的
print(lst[s]) # [2,3]
(3)字符串
str()将数据转换成字符串
bytes()ba字符串转换成为bytes类型
ord() 输入字符找带字符编码的位置
chr() 输入位置数字找出对应的字符
ascii() 是ascii码中的返回值 不是就返回u
repr() 返回一个对象的string形式
2.数据集合
字典: dict 创建一个字典
集合: set创建一个集合
frozenset()创建一个冻结的集合,冻结的集合不能进行添加和删除操作。
3.相关的内置函数
len() 返回一个对象中的元素的个数
sorted() 对可迭代对象进行排序操作(lamda)
语法: sorted(lterable, key = 函数(排序规则),reverse = False)
lterable:可迭代对象
key:排序规则(排序函数),在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数。根据函数运算的结束进行排序
reverse: 是否是倒叙。True:倒叙,False:正序
enumerate()获取集合的枚举对象
all()可迭代对象中全部是True ,结果才是True
any()可迭代对象中有一个是True, 结果就是True
zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表,如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同
filter() 过滤(lamda)
语法: fiter(function.lterable)
三,和作用域相关
四,和迭代器和生成器相关
五,字符串类型代码的执行
六,输入与输出
七,内存相关
八,文件操作相关
九,模块相关
十,帮助
十一,调用相关
十二,查看内置属性
详细说明
1.abs() 函数
abs() 函数返回数字的绝对值。
abs() 函数返回数字的绝对值。
参数 x -- 数值表达式,可以是整数,浮点数,复数。
返回值
函数返回 x(数字)的绝对值,如果参数是一个复数,则返回它的大小。
输入是复数(complex number)时, 返回这个复数的模。
Python fabs() 与 abs() 区别
Python 中 fabs(x) 方法返回 x 的绝对值。虽然类似于 abs() 函数,但是两个函数之间存在以下差异:
abs() 是一个内置函数,而 fabs() 在 math 模块中定义的。
fabs() 函数只适用于 float 和 integer 类型,而 abs() 也适用于复数。
2. divmod() 函数
python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。
在 python 2.3 版本之前不允许处理复数。
3. input() 函数
Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
4. open() 函数
python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。
15.sorted() 函数
对所有可迭代的对象进行排序操作
sort 与sorted区别:
sort 是应用在list上的方法 sorted可以对所以可迭代的对象进行排序操作
list的sort方法返回的是对已经存在的列表进行操作,而内建函数sorted方法返回的是一个新的list ,而不是在原来的基础上进行的操作
语法
sorted 语法:
sorted(iterable, key = None, reverse = False)
参数说明:
- iterable -- 可迭代对象。
- key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
- reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
返回值
返回重新排序的列表。
实例
以下实例展示了 sorted 的最简单的使用方法:
print(sorted([5, 2, 3, 1, 4])) # 默认为升序
-------------------------------------------
[1, 2, 3, 4, 5]
你也可以使用 list 的 list.sort() 方法。这个方法会修改原始的 list(返回值为None)。通常这个方法不如sorted()方便-如果你不需要原始的 list,list.sort()方法效率会稍微高一些。
a = [5, 2, 3, 1, 4]
print(a.sort())
print(a)
---------------------------
None
[1, 2, 3, 4, 5]
另一个区别在于list.sort() 方法只为 list 定义。而 sorted() 函数可以接收任何的 iterable。
print(sorted({1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}))
-------------------------------------------------------
[1, 2, 3, 4, 5]
利用key进行倒序排序
example_list = [5, 0, 6, 1, 2, 7, 3, 4]
result_list = sorted(example_list, key=lambda x: x*-1)
print(result_list)
---------------------------------------------------------
[0, 1, 2, 3, 4, 5, 6, 7]
例子
- sorted 的应用,也可以通过 key 的值来进行数组/字典的排序,比如:
array = [{"age":20,"name":"a"},{"age":25,"name":"b"},{"age":10,"name":"c"}]
array = sorted(array,key=lambda x:x["age"])
print(array)
- 使用lambda和sorted将列表里字符串排序按照字符串中的数字从小到大排列。
lis = ["PCR 0: Core Root of Trust of Measurement (CRTM), BIOS, and Platform Extensions",
"PCR 9: NTFS Boot Block",
"PCR 2: Option ROM Code",
"PCR 10: Boot Manager",
"PCR 4: Master Boot Record (MBR) Code",
"PCR 8: NTFS Boot Sector",
"PCR 11: BitLocker Access Control"]
print(sorted(lis, key=lambda x: int(x.split(':')[0][4:])))
- 先按照成绩降序排序,相同成绩的按照名字升序排序:
list1 = [{'name': 'Alex', 'score': 48}, {'name': 'Harry', 'score': 18}, {'name': 'JSON', 'score': 28},
{'name': 'christ', 'score': 38}]
print(sorted(list1, key=lambda x: (-x['score'], x['name'])))
python