16.匿名函数 与 部分内置函数

【一】匿名函数

1)语法

lambda 函数参数: 表达式

2)用法

# 单参数匿名函数
lbd_sqr = lambda x: x ** 2
# 多参数匿名函数
sumary_lba = lambda arg1, arg2: arg1 + arg2
# 多参数解包
add_lba = lambda *args: sum(args)

3)高阶函数

# 过滤函数(filter)
odd = lambda x: x % 2 == 1
num = filter(odd, [1, 2, 3, 4, 5])
print(list(num))  # [1, 3, 5]

【二】内置函数

1)数据类型强转(8)

int()	#整数 
float()	#浮点数
str()	#字符串 
list()	#列表
tuple()	#元组
dict()	#字典
bool()	#布尔
set()	#集合

2)数字进制转化换(3)

# 十转二
bin()
# 十转八
oct()
# 十转十六
hex()

3)数字运算(8)

# 获取绝对值
abs()
# 获取商和余数
divmod(被除数,除数)
# 四舍五入(默认整数)
round(小数,保留位数)
# a的b次幂(三个参数时c是除数,得到余数)
pow(a,b)
# 求和(参数是可迭代类型)
sum()
# 最小值
min()
# 最大值
max()
# 复数转换
complex(3, 4)# (3+4j)
complex(5, 9) + complex(3, 4)# (8+13j)

4)序列相关(5)

1.翻转

reversed()

eg = 'abc123'
eg_new = reversed(eg)
print(list(eg_new))
# ['3', '2', '1', 'c', 'b', 'a']

2.切片

slice()

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.计算长度

len()

4.排序

sorted()

  • sorted(可迭代对象, key=函数(排序规则), reverse=False)
    • key: 排序规则(排序函数), 在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数. 根据函数运算的结果进行排序
    • reverse = (True: 倒叙, False: 正序)
eg = sorted([5, 7, 6, 12, 1, 13, 9, 18, 5])

5.枚举

enumerate()

for num, data in enumerate(['a', 'b', 'c', 'd', 'e'], start=1):
    print(f"这是第 {num} 个人 :>>>> {data}")
#这是第 1 个人 :>>>> a
#这是第 2 个人 :>>>> b
...

5)字符串相关(4)

1.格式化输出

format()

  • 对齐方式
# 居中对齐
print(format('abc', '^20'))
# 左对齐
print(format('abc', '<20'))
# 右对齐
print(format('abc', '>20'))
  • 进制转换
print(format(3, 'b'))	# 二进制:11
print(format(97, 'c'))  # 转换成unicode字符:a
print(format(11, 'd'))  # ⼗进制:11
print(format(11, 'o'))  # 八进制:13
print(format(11, 'x'))  # 十六进制(⼩写字母):b
print(format(11, 'X'))  # 十六进制(大写字母):B
print(format(11, 'n'))  # 和d⼀样:11
print(format(11))		# 和d⼀样:11
  • 科学计数法
print(format(123456789, 'e'))  # 科学计数法. 默认保留6位小数:1.234568e+08
print(format(123456789, '0.2e'))  # 科学计数法. 保留2位小数(小写):1.23e+08
print(format(123456789, '0.2E'))  # 科学计数法. 保留2位小数(大写):1.23E+08
print(format(1.23456789, 'f'))  # 小数点计数法. 保留6位小数:1.234568
print(format(1.23456789, '0.2f'))  # 小数点计数法. 保留2位小数:1.23
print(format(1.23456789, '0.10f'))  # 小数点计数法. 保留10位小数:1.2345678900
print(format(1.23456789e+3, 'F'))  # 小数点计数法. 很大的时候输出INF:1234.567890

2.字符串转bytes

bytes(内容,编码)

3.获取字节数组

bytearray(内容,编码)

  • 返回一个新字节数组. 这个数字的元素是可变的, 并且每个元素的值得范围是[0,256)

4.返回对象的字符串格式

repr()

  • 原样输出,过滤掉转义字符 \n \t \r 不管百分号%

6)字符编码(3)

1.字符编码找数字

ord()

  • 在ASCII码表中查数据

2.数字找字符编码

chr()

3.数字找ASSCII码

ascii()

7)输入输出函数

input()
print()

8)算法

hash()

  • 获取到对象的哈希值(int, str, bool, tuple),不可变数据类型
  • hash算法:
    • 目的是唯一性
    • dict 查找效率非常高
  • hash表:
    • 用空间换的时间 比较耗费内存

9)文件操作

open()

10)导入模块

import _

11)帮助函数

help()

  • 函数用于查看函数或模块用途的详细说明

12)调度函数

callable()

  • 用于检查一个对象是否是可调用的
    • 如果返回True, object有可能调用失败
    • 但如果返回False. 那调用绝对不会成功

13)查看内置函数

dir()

  • 查看对象的内置属性
  • 访问的是对象中的 __dir__() 方法

14)调试器

breakpoint()

15)获取当前变量的内存地址

print(id('dream'))
posted on 2024-04-25 15:24  晓雾-Mist  阅读(2)  评论(0编辑  收藏  举报