
python之内置函数
PS:工厂函数:
发布日期:2021-05-04 19:07:25
浏览次数:27
分类:原创文章
本文共 4377 字,大约阅读时间需要 14 分钟。
python之内置函数
文章目录
一、什么是内置函数
- 解释器自带的的函数就是内置函数
- 内置函数查看方法
print(dir(__builtins__))
print(len(dir(__builtins__))) # 153个
二、常见内置函数
PS:工厂函数:int float str list tuple dict set bool bytes
三、常用内置函数介绍
部分常用内置函数在这(详见第五小节匿名函数的应用):
1.abs():绝对值
print(abs(-6))
2.all():判断
- 一个为假,就为假(0、空、None、False)
- 所有元素的布尔值为真,最终结果才为真
print(all([1,'a',0])) # Falseprint(all([1,2,[]])) # False
-
传给all 的可可跌代对象如果为空,最终结果为真
print(all('')) # Trueprint(all([])) # True
3.any():判断
-
但凡有一个为真,就为真
print(any([0,'',None,1])) # True
-
传给any的可跌代对象如果为空,最终结果为假
print(any([])) # Falseprint(any('')) # False
4.进制转换
print(bin(11)) # 10--->2print(oct(11)) # 10--->8print(hex(11)) # 10--->16
5.bool():布尔值
print(bool(0)) #0, None,空的布尔值为假
6、.encode():转类型
- 编码,转成“bytes”类型
res = '你好taoxiaoxin'.encode('utf-8')print(res) # b'\xe4\xbd\xa0\xe5\xa5\xbdtaoxiaoxin'res = bytes('你好taoxiaoxin',encoding='utf-8')print(res) # b'\xe4\xbd\xa0\xe5\xa5\xbdtaoxiaoxin'
7、callable( ) : 调用
-
判断是否可以调用
def func(): passprint(callable(func)) # Trueprint(callable('ss'.strip)) # Trueprint(callable('dac'.split)) # Falseprint(callable(123)) # False
8、ASCLL表转化
print(chr(90)) #按照表十进制转化成字符print(ord('x')) #按照表十进制转化成数字
9、dir():查看调用对象
- 查看某个对象可以调用的方式
print(dir('taoxiaoxin')) # [打印出一堆的调用方法]
10、divmod( ) : 除 余
print(divmod(10,3)) #(3,1)--->10除于3余1print(divmod(10,2)) #(5,0)--->10除于2余0
11、eval( ) : 字符串内表达式运算
- 将字符串里面的表达式拿出来运算一下, 并拿到运算的结果
#数学表达式res = eval('2**3')print(res) # 8#列表res = eval('[1,2,3,4.5,5]')print(res) # [1, 2, 3, 4.5, 5]print(res[2]) # 3#字典res = eval("{'name':'shawn','age':18,'sex':'man'}")print(res) # {'name': 'shawn', 'age': 18, 'sex': 'man'}print(res["name"]) # shawn
-
文件存取示例 (文件拿出来是字符串, 使用 eval() 将其转成字典)
with open(r"aaa.txt","at",encoding="utf-8")as f: f.write('{"name":"淘小欣","age":10,"sex":"man"}\n') f.write('{"name":"派大星","age":18,"sex":"woman"}\n') f.write('{"name":"海绵宝宝","age":14,"sex":"man"}\n')l = []with open(r"aaa.txt","rt",encoding="utf-8")as f: for i in f: line = i.strip('\n') res = eval(line) l.append(res)print(l)'''[{'name': '淘小欣', 'age': 10, 'sex': 'man'}, {'name': '派大星', 'age': 18, 'sex': 'woman'}, {'name': '海绵宝宝', 'age': 14, 'sex': 'man'}]'''print(type(l)) # <class dict>print(l[0]["name"]) # 淘小欣
12、frozenset( ) : 不可变集合, 冻结集合
-
制作不可变的集合
fset = frozenset({ 1,2,3})print(fset) # frozenset({1, 2, 3})print(type(fset)) # <class 'frozenset'>
13、globals( ) : 全局作用域中的绑定关系
-
查看全局作用域中名字与值得绑定关系
-
locals( ) : 局部 (当前位置的)
# 当都处于全局名称空间调用查看时,查看的效果是一样的x = 111111print(globals()) # [一堆绑定关系]print(locals()) # [一堆绑定关系]# 当在函数内部使用 "locals()" 查看时, 得到的就是函数内部名称空间的绑定关系def aa(): x = 111 y = 222 print(locals())aa() #{'x': 111, 'y': 222}
14、help( ) : 显示帮助信息
def func(): """ 帮助信息 :return: """ passprint(help(func)) # [显示里面的帮助文档]print(help(max))
15、len( ) : 长度
- 自定调用 “len” 功能
print(len({ 'x':1,'y':2})) # 2print({ 'x':1,'y':2}.__len__) # 2
16、iter( ) : 迭代器
- 自定调用 “iter” 功能
res = iter('淘小欣')print(next(res)) # 淘print(next(res)) # 小print(next(res)) # 欣
17、pow( ) : 平方取余
print(pow(10, 2)) # 100 10**2------>100print(pow(2,3,3)) # 2 2**3 % 3--->余 2print(pow(10, 2, 3)) # 1 10**2 % 3-->余 1
18、slice( ) : 切片
- 创建一个切片模板(对象),以后可以直接拿过来用
# 创建切片对象res = slice(1, 5, 2) # 直接使用创建好的来切l = [1, 2, 3, 4, 5, 6, 7, 8]print(l[res]) #[2, 4]t = (5, 14, 7, 8, 9, 5, 4, 2)print(t[res]) #(14, 8)
19、sum( ) : 求和
print(sum([1,2,3,4,5])) # 15
20、zip( ) : (拉链函数) 左右对应
left = 'hello'right = (1,2,3,) res = zip(left,right)print(res) # <zip object at 0x0000016FC23A0748>print(type(res)) # <class 'zip'>print(list(res)) # [('h', 1), ('e', 2), ('l', 3)]
21、import : 转模块
- 一般用于从文件中读取字符串, 将其转换成模块的形式
- 拿到的返回值可以进行模块的操作
with open('m',mode='rt',encoding='utf-8') as f: module=f.read() # 这里拿到的是字符串 time=__import__(module) # __import__("time") 以字符串形式导入模块 time.sleep(3) print(time.time())
22、reversed( ) : 倒序
- 将一个有序对象倒过来排序 (单纯的倒过来)
res = reversed((2,3,65,765,23,20))res2 = reversed([4,6,2,7,9,0,3,1])print(tuple(res)) # (20, 23, 765, 65, 3, 2)print(list(res2)) # [1, 3, 0, 9, 7, 2, 6, 4]
23、hash( ) : 哈希值
- 返回传入对象的 hash 值
- 传入的是可 hash 类型, 也就是不可变类型
print(hash(1231)) # 1231print(hash("派大星")) # 4444534694763505378print(hash((1,2,3,4,"a"))) # 4233406373922709203print(hash(2.5)) # 1152921504606846978print(hash(['海绵宝宝',12])) # 报错 : TypeError
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年03月16日 18时26分49秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
P3957 [NOIP2017 普及组] 跳房子
2019-03-04
P3374 【模板】树状数组 1
2019-03-04
《ybtoj高效进阶》第二部分第二章例题5 子正方形
2019-03-04
P1381 单词背诵
2019-03-04
SSLOJ1230 战略游戏
2019-03-04
P5854 【模板】笛卡尔树
2019-03-04
SpringMVC的基础配置之注解驱动
2019-03-04
在Ubuntu上安装GCC编译器
2019-03-04
Maven(高级)之聚合
2019-03-04
快速构建SpringBoot工程
2019-03-04
SpringBoot配置之配置文件分类
2019-03-04
Vue中使用v-for不能用index作为key值
2019-03-04
position: fixed如何相对父元素定位
2019-03-04
SecureCRT注册机
2019-03-04
供应商解决了mini-LED的生产问题 新款MBP蓄势待发?
2019-03-04
new对象实际是在干嘛,懂了后String相关面试题随便推导
2019-03-04
Spring中@EnableCaching如何集成redis
2019-03-04
爱了!Alibaba技术官甩出的SpringCloud笔记,GitHub已标星81.6k
2019-03-04
菜鸟程序员,被无良HR欺骗,因祸得福,竟“意外”拿下美团offer
2019-03-04
已跪,Java全能笔记爆火,分布式/开源框架/微服务/性能调优全有
2019-03-04