day17 Pyhton学习 内置函数继续
2024-08-23 13:02:33
1. locals 本地作用域/局部作用域 会随着位置的改变而改变
2.globals 全局作用域 永远不变,永远是全局
3.complex:复数 实数(有理数和无理数)
某一个数的平方是-1 ,那么这个数就是一个虚数的基础单位 j
# 复数 = 实数+虚数 = a+bj
# 选择题 :(对你的数学有要求的公司都会考)
# 复数不能比较大小
# 共轭复数 : a+bj 和 a-bj是一对共轭复数
# a+bj 和 a+bJ都是复数
4.bin oct hex
# a = 19
# # 0 1 2 3 4 5 6 7 8 9 A B C D E F 10
# # 256 十进制
# print(bin(a)) # 0b100000000 0b代表二进制,100000000 = 256
# print(oct(a)) # 0o400 0o代表八进制,400 = 256
# print(hex(a)) #十六进制
5.abs 求绝对值,正数的绝对值是正数,负数的绝对值也是正数
6.divmod 商余函数
print(divmod(2520,25))#(100, 20)
print(divmod(35,25))#(1, 10)
print(divmod(8,3))#(2, 2)
7.round(小数,保留几位小数) 小数精确
ret = round(2.3258358)
print(ret)#2
ret = round(2.3253358,2)
print(ret)#2.33
ret = round(2.3253358,3)
print(ret)#2.325
ret = round(0.5)
print(ret)#0
8.pow(x,y,z=1) 幂运算/幂余运算 x的y次方%2
print(pow(2,3))#8
print(pow(3,2))#9
print(pow(5,3,2))#1
print(pow(4,2,2))#0
print(pow(4,3,2))#0
9.sum(可迭代的数字集,start),start从哪个数开始加
print(sum((1,2,3,4)))
print(sum([1,2,3,4]))
print(sum(range(10)))
print(sum((i**2 for i in range(5))))
print(sum((1,2,3,4)))
print(sum((1,2,3,4),10))
print(sum((1,2,3,4),30))
10.min/max(iterable/*args,key) key是一个函数的内存地址,key做的事情就是根据你对每一项数据大小的需求来排序
print(min(1,2,3))
print(min((1,2,3)))
print(min((1,2,3),(4,5,6)))
print(min((7,2,3),(4,5,6)))
def func(n): # n = 2,3,4,7
return n%6 # 2,3,4,1
ret = min(2,3,4,7,key = func)
print(ret) #7
l = [{'name1':10},{'name2':500}]
def func(dic):
for k in dic:
return dic[k]
# def max(iter,key = None):#自己定义的max函数
# ret=0
# max_value = 0
# if key:
# for i in iter :
# if key(i)>max_value:#key(i)是股票的价格
# max_value = key(i)
# ret = i
# return ret
# def min(iter,key = None):#自己定义的min函数
# ret=0
# min_value=0
# if key:
# for i in iter:
# if min_value==0:
# min_value=key(i)
# ret=i
# elif min_value>key(i):
# min_value=key(i)
# ret=i
# return ret
print(max(l,key = func))
print(min(l,key = func))
# l中的每一项都会作为参数传给func
# max和min的求值会根据func的返回值来排序
11.reversed(list/tuple) #返回一个迭代器,为了节省内存
l = [1,2]
l.reverse()
print(l) ret = reversed([1,2,3]) # iterator
print(list(ret))
# reverse是在原基础上修改 : 2000项的列表 不会产生额外的内存占用
# reversed不修改原基础 : 不直接返回列表而返回迭代器,为了不占用更多的内存
12. slice 切片
l = [1,2,3,4,5,]#[2, 3, 4]
print(l[1:4]) ret = slice(1,4)# [2, 3, 4]
print(l[ret])
13 . format 与具体数据相关,用于计算各种小数,精算等
# 字符串
print(format('test', '<20')) # 左对⻬
print(format('test', '>20')) # 右对⻬
print(format('test', '^20')) # 居中
# 数值
print(format(3, 'b')) # ⼆进制
print(format(97, 'c')) # 转换成unicode字符
print(format(11, 'd')) # ⼗进制
print(format(11, 'o')) # ⼋进制
print(format(11, 'x')) # ⼗六进制(⼩写字⺟)
print(format(11, 'X')) # ⼗六进制(⼤写字⺟)
print(format(11, 'n')) # 和d⼀样
print(format(11)) # 和d⼀样
# 浮点数
print(format(123456789, 'e')) # 科学计数法. 默认保留6位⼩数
print(format(123456789, '0.2e')) # 科学计数法. 保留2位⼩数(⼩写)
print(format(123456789, '0.2E')) # 科学计数法. 保留2位⼩数(⼤写)
print(format(1.23456789, 'f')) # ⼩数点计数法. 保留6位⼩数
print(format(1.23456789, '0.2f')) # ⼩数点计数法. 保留2位⼩数
print(format(1.23456789, '0.10f')) # ⼩数点计数法. 保留10位⼩数
print(format(1.23456789e+10000, 'F')) # ⼩数点计数法.
14. bytes 字节
# str --> bytes
# print('abc'.encode('utf-8'))
# print('你好'.encode('utf-8'))
# bytes --> str
# b = b'\xe4\xbd\xa0\xe5\xa5\xbd'
# print(b.decode('utf-8'))
15. bytearray 把一个字符串编程一个字节数组,较长的字符串的修改节省内存,修改行为必须依靠编码
ret = bytearray('abc'*30,encoding='utf-8') # 字节数组
print(ret)#bytearray(b'abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'
ret[0] = 102 # asc码 65A 97abcdef 你好 您好
print(ret)#bytearray(b'fbcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc'
16.memoryview 查看bytes在内存中的情况
ret = memoryview(bytes('hello,eva',encoding='utf-8'))
print(list(ret[:10]))
17.ord/chr 字符和编码之间的转换
# print(ord('a'))
# print(chr(97))
18.repr() 打印的时候输出这个变量的数据类型
a = 1
b = '1'
print(repr(a),repr(b))#1 '1'
print(a)#1
print(b)#1
19.len 计算长度
a="d3d3dd"
print(len(a))#6
最新文章
- C# 异步
- Git平台使用时的配置分析
- s3c6410_u-boot-2010.03移植【续】
- js 创建List<;Map>; 这种格式的集合
- Xcode中使用svn时,报证书验证错误Error validating server certificate for
- NodeJS缓存机制:畅销货,就多囤一点呗
- 5 Things They Never Tell You About Making iPhone Apps
- Zab: A simple totally ordered broadcast protocol(译)
- Android 开发笔记___DatePicker__日期选择器
- day14 带参装饰器、迭代器、生成器
- 【C++】C++中类的基本使用
- SQL 必知必会&#183;笔记<;19>;使用游标
- Thymeleaf使用bootstrap及其bootstrap相关插件(一)
- MyBatis 对数据库进行CRUD操作
- vue学习记录
- HDU 6038 Function(思维+寻找循环节)
- JavaScript权威指南--Javascript子集和扩展
- Cognos10.2.1配置加密信息不能被加密
- df 命令-显示目前磁盘剩余的磁盘空间
- 传统的Java虚拟机和Android的Dalvik虚拟机及其ART模式
热门文章
- MyBatis动态SQL(使用)整理
- 再试Count(*) 与Count(*) 列
- HTML绘制表格
- 一文说清 InnoDB 的事务机制
- ajax之---“伪”ajax
- [LeetCode]23. 合并K个排序链表(优先队列;分治待做)
- Mysql 多表连查 xml写法 非注解形式
- 说说我对 WSGI 的理解
- J.U.C之ReentrantLock 可重入锁
- SpringBoot框架:通过AOP和自定义注解完成druid连接池的动态数据源切换(三)