学习笔记-Python开发-022_内置函数

在python中,我们可以获得很多功能强大的函数,其中由官方提供,在编译器中直接继承的函数被称为内置函数,在这里介绍其中36个常用的内置函数

image-20220418163741003

1 数学运算相关

1.1 abs

abs() 函数返回数字的绝对值

abs(x)

1.2 pow 指数

函数是计算x的y次方,如果z在存在,则再对结果进行取模,其结果等效于 pow(x,y)%z

注意:pow() 通过内置的方法直接调用,内置方法会把参数作为整型,而 math 模块则会把参数转换为 float。

# 内置pow()
v1 = pow(2,5) # 2的5次方  2**5
print(v1)

# math.pow()
import math
math.pow(x, y)

1.3 sum

sum() 方法对序列进行求和计算

sum(iterable,start)
  • iterable -- 可迭代对象,如:列表、元组、集合
  • start -- 指定相加的参数,如果没有设置这个值,默认为0
sum([0,1,2])  
3  
sum((2, 3, 4), 1)        # 元组计算总和后再加 1
10
sum([0,1,2,3,4], 2)      # 列表计算总和后再加 2
12

1.4 divmod

python divmod() 函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。

在 python 2.3 版本之前不允许处理复数

v1, v2 = divmod(9, 2)
print(v1, v2) # v1=4 商 v2=1 余

1.5 round

round(浮点数,余几位小数) 方法返回浮点数x的四舍五入值

v1 = round(4.11786, 2)
print(v1) # 4.12

2 数据处理

2.1 min 最小值

Python min() 方法返回字符串中最小的数字,或根据ASCII码排列最小的字符

v1 = min(11, 2, 3, 4, 5, 56)
print(v1) # 2
v2 = min([11, 22, 33, 44, 55]) # 支持传入可被迭代的类型
print(v2)
v3 = min([-11, 2, 33, 44, 55], key=lambda x: abs(x))
# 每一个参数都会被拿到lambda x: abs(x)执行一次,所以2的绝对值是最小的
print(v3) # 2

2.2 max 最大值

Python max() 方法返回字符串中最大的数字,或根据ASCII码排列最大的字符

v1 = max(11, 2, 3, 4, 5, 56)
print(v1)

v2 = max([11, 22, 33, 44, 55])
print(v2)
v3 = max([-11, 22, 33, 44, 55], key=lambda x: x * 10)
# 每一个参数都会被拿到lambda x: abs(x)执行一次,所以55的绝对值是最大的
print(v3) # 55

2.3 all 是否全部为True

all() 函数用于判断给定的可迭代参数中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。

元素除了是 0、空、None、False 外都算 True

v1 = all([11,22,44,""]) # False

2.4 any 是否存在True

any() 函数用于判断给定的可迭代参数是否全部为 False,则返回 False,如果有一个为 True,则返回 True。

元素除了是 0、空、FALSE 外都算 TRUE

v2 = any([11,22,44,""]) # True

3 进制转换

3.1 bin 十进制转二进制

bin(10)

3.2 oct 十进制转八进制

oct(10)

3.3 hex 十进制转十六进制

hex(10)

4 unicode表

4.1 ord 获取字符对应的unicode码点(十进制)

v1 = ord("杨")
print(v1, hex(v1))

4.2 chr 根据码点(十进制)获取对应字符

v1 = chr(27494)
print(v1)

5 数据类型转换

5.1 int整形

int() 函数用于将一个字符串或数字转换为整型

int(12.3) # 12

5.2 float

float() 函数用于将整数和字符串转换成浮点数

float(1)
1.0
float(112)
112.0
float(-123.6)
-123.6
float('123')     # 字符串
123.0

5.3 str

将unicode编码转化为字符形式

a = '\u006b\u0069\u006e\u0067\u0068\u0074'
str(a)
'kinght'

5.4 bytes

将utf-8、gbk编码转换为bytes格式(字节码格式)

v1 = "kinght"  # str类型
v2 = v1.encode('utf-8')  # bytes类型
v3 = bytes(v1,encoding="utf-8") # bytes类型

5.5 bool

bool() 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False,bool 是 int 的子类

5.6 list

list() 方法用于将元组转换为列表。

注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中

5.7 dict

dict() 函数用于创建一个字典

5.8 tuple

tuple() 函数将可迭代系列(如列表)转换为元组

5.9 set

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等

6 其他

6.1 len

Python len() 方法返回对象(字符、列表、元组等)长度或项目个数

len([1,2,3,4,5,6])

6.2 print

print() 方法用于打印输出,最常见的一个函数

print('3.1415926')

6.3 input

Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。

username = input("请输入你的名字")

6.4 open

open() 方法用于打开一个文件,并且设置需要的打开选项

file_object = open('123.txt',mode='rb')

6.5 type,获取数据类型

type() 函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象

v1 = "123"
if type(v1) == str:
    pass
else:
    pass

6.6 range

python2.x range() 函数可创建一个整数列表,一般用在 for 循环中

Python3 range() 返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表

for item in range(10):
	print(item,end=" ")
# 0 1 2 3 4 5 6 7 8 9

6.7 enumerate

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中

Python 2.3. 以上版本可用,2.6 添加 start 参数

v1 = ["kinght", "alex", 'root']

for num, value in enumerate(v1, 1):
  # 列表会提供索引位置 从0开始
    print(num, value)

6.8 id

id() 函数返回对象的唯一标识符,标识符是一个整数,CPython 中 id() 函数用于获取对象的内存地址

a = 'runoob'
id(a) # 4531887632
b = 1
id(b) # 140588731085608

6.9 hash

hash() 用于获取取一个对象(字符串或者数值等)的哈希值

v1 = hash("kinght")

6.10 help,帮助信息

help() 函数用于查看函数或模块用途的详细说明

pycharm,不用
终端,使用 help(str)

6.11 zip

会将多个列表,索引相同的元素,组合成一个列表,然后放到那个元素中

v1 = [11, 22, 33, 44, 55, 66]
v2 = [55, 66, 77, 88]
v3 = [10, 20, 30, 40, 50]

result = zip(v1, v2, v3)
for item in result:
    print(item)
    
'''
(11, 55, 10)
(22, 66, 20)
(33, 77, 30)
(44, 88, 40)

6.12 callable

判断变量名对应空间存储的是否可执行(后面是否可以加括号)

v1 = "kinght"
v2 = lambda x: x
def v3():
    pass


print( callable(v1) ) # False
print(callable(v2))
print(callable(v3))

13 sorted,排序

v1 = sorted([211,221,33,44,55]) # 默认从小到大
v2 = sorted([211,221,33,44,55],reverse = True) # True是从大到小
info = {
    "wupeiqi": {
        'id': 10,
        'age': 119
    },
    "root": {
        'id': 20,
        'age': 29
    },
    "seven": {
        'id': 9,
        'age': 9
    },
    "admin": {
        'id': 11,
        'age': 139
    },
}
v1 = sorted(info) # key进行排序
result = sorted(info.items(), key=lambda x: x[1]['id']) # 根据内部id进行排序
print(result)
data_list = [
    '1-5 编译器和解释器.mp4',
    '1-17 今日作业.mp4',
    '1-9 Python解释器种类.mp4',
    '1-16 今日总结.mp4',
    '1-2 课堂笔记的创建.mp4',
    '1-15 Pycharm使用和破解(win系统).mp4',
    '1-12 python解释器的安装(mac系统).mp4',
    '1-13 python解释器的安装(win系统).mp4',
    '1-8 Python介绍.mp4', '1-7 编程语言的分类.mp4',
    '1-3 常见计算机基本概念.mp4',
    '1-14 Pycharm使用和破解(mac系统).mp4',
    '1-10 CPython解释器版本.mp4',
    '1-1 今日概要.mp4',
    '1-6 学习编程本质上的三件事.mp4',
    '1-18 作业答案和讲解.mp4',
    '1-4 编程语言.mp4',
    '1-11 环境搭建说明.mp4'
]
result = sorted(data_list, key=lambda x: int(x.split(' ')[0].split("-")[-1]) )
print(result)
posted @ 2023-02-26 22:38  kinghtxg  阅读(12)  评论(0编辑  收藏  举报