python内置函数

divmod  常用于页面抽屉,总数为10,分3页,还剩1个
print(divmod(10,3)) #输出(3, 1)
#eval  1.将字符串形式的字典转成字典,2.将字符串中函数直接执行
复制代码
dic={'name':'sunlinlin'}
dic2str=str(dic)
print(type(dic2str),dic2str) #<class 'str'> {'name': 'sunlinlin'}
dic_new=eval(dic2str)
print(type(dic_new),dic_new) #<class 'dict'> {'name': 'sunlinlin'}

exception='1+2*3-1' print(eval(exception)) #输出6
复制代码
#hash() 用于校验信息是否被篡改,输入长度不限,输出长度恒定。校验不可变的类型可以进行hash运算。
ms1='asfsadlfjas;lfdj1j;qwekqlwerjqw;le'
print(hash(ms1)) #-3770851893478341625
#__file__  当前文件名
loc_filename=__file__
print(loc_filename) #输出C:\Users\seven\Desktop\code.py,实际是相对路径,pycharm给转成了绝对路径
#globals()  所有的全局变量
name='2222222222'
print(globals()) #name也是全局变量,会打印出来
#局部变量
print(locals())

 判断是否存在非真值

#all()  #判断列表中是否存在非真值,如None,0,空 则返回false,否则返回true
print(all(['111','222',''])) #输出:False,因为里面有空字符串

#bool() 判断值中是否存在非真值,如存在则返回false,否则返回true
print(bool(0)) #返回false,因为判断的值是0

#any()  #判断是否存在真值,有一个则返回ture,否则false
print(any(['111','222',''])) #输出:true
#dic()  #拉链函数,将两个可迭代对象转成一一对应的一组可迭代对象
dic={'aaa':'111','bbb':'222'}
dic2zip=zip(dic.keys(),dic.values())
print(dic2zip,'\t',list(dic2zip)) #<zip object at 0x000001F36920B200>   [('aaa', '111'), ('bbb', '222')]
#max()  计算并返回一个可迭代对象中的最大值
复制代码
lst=[1,2,3,4]
print(max(lst)) #输出4

#高级用法
dic={'孙依依':1,'孙林林':35,'杨絮':34}
#将字典key与value位置颠倒,并形成列表[value*:key*]。
dic2zip=zip(dic.values(),dic.keys())
#max()比较是将可迭代对象值从头向后依次对比
print(max(dic2zip)) #输出(35, '孙林林')
复制代码

 seek(offs,code) #code:1正序,2倒叙

f=open('111.txt','rb')
for i in f:
    offs=-2 #倒叙读,要写负数
    f.seek(offs, 2)  # 2表示倒叙读文件
    data=f.readlines()
    print('最后一行内容:%s' % (data[-1].decode('utf-8')))

 map() #网上描述:根据提供的函数对指定序列做映射。简单理解:将第二个参数进行迭代执行,并返回一个迭代器

def square(x) :         # 计算平方数
    return x ** 2
print(map(square, [1,2,3,4,5]))    # <map object at 0x100d3d550>
#转成列表才能正常显示
print(list(map(square, [1,2,3,4,5])))   # [1, 4, 9, 16, 25]
#直接使用lamda函数
print(list(map(lambda x: x ** 2, [1, 2, 3, 4, 5])))   #[1, 4, 9, 16, 25]

 

posted @   seven1986  阅读(27)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示