05 python学习笔记-常用内置函数(五)

时间:2022-03-15 14:51:07

1、sorted() 函数对所有可迭代的对象进行排序(默认升序)操作

  • sort 与 sorted 区别:
  • sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
  • list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
l= 'asefdw3dc'
print(sorted(l)) #排序,只有列表有sort()方法 students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
print(sorted(students, key=lambda s: s[2])) # 按年龄排序

2、reversed() 函数返回一个反转的迭代器。 reversed(seq)要转换的序列,可以是 tuple, string, list 或 range

# 字符串
seqString = 'Runoob'
print(list(reversed(seqString))) # 元组
seqTuple = ('R', 'u', 'n', 'o', 'o', 'b')
print(list(reversed(seqTuple))) # range
seqRange = range(5, 9)
print(list(reversed(seqRange))) # 列表
seqList = [1, 2, 4, 3, 5]
print(list(reversed(seqList)))

3、all() 函数用于判断给定的参数中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。元素除了是 0、空、None、False 外都算 True;空元组、空列表返回值为True

05 python学习笔记-常用内置函数(五)

4、any() 函数用于判断给定的参数是否全部为False,是则返回False,如果有一个为True,则返回True。 元素除了是 0、空、False外都算 TRUE

05 python学习笔记-常用内置函数(五)

5、bool() 函数用于将给定参数转换为布尔类型,如果参数不为空或不为0,返回True;参数为0或没有参数,返回False

05 python学习笔记-常用内置函数(五)

6、chr()函数用一个范围在range(256)内(即0~255)的整数作参数,返回一个对应的ASCII数值;ord()打印字符对应的ASCII码

7、bin()函数返回一个整数int或者长整数long int的二进制表示

05 python学习笔记-常用内置函数(五)

8、dict()函数用来将元组/列表转换为字典格式

05 python学习笔记-常用内置函数(五)

9、dir()函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表

05 python学习笔记-常用内置函数(五)

10、eval() 函数用来执行一个字符串表达式,并返回表达式的值

print(eval('1+2')) #执行python代码,只能执行简单的,定义数据类型和运算
s = '{"username":"admin","pwd":"123456a"}'
print(eval(s)) #执行python代码,将字符串转换为字典

11、exec() 执行储存在字符串或文件中的Python语句,相比于eval,exec可以执行更复杂的Python代码

print(exec('def a():pass')) #执行python代码
f=open('tools.py',encoding='utf-8')
result = f.read()
exec(result)

12、filter()用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,可用list()来转换为列表。

注意: filter()接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回True或 False,最后将返回 True 的元素放到新列表中

13、map()接收函数f和list,并通过把函数f依次作用在list的每个元素上,得到一个新的list并返回

print(list(filter(lambda x:x>5,[1,2,3,4,5,6]))) #filter过滤数据
l=[1,2,3,4,5,6]
def t(num):
if num%2 == 0:
return True
l2=list(filter(t,l)) #将列表l中满足函数条件t的数据过滤出来
l3=list(map(t,l)) #判断列表l中的元素是否满足函数条件t,满足返回true,不满足返回None
print(l2)
print(l3)

14、zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。可以使用 list() 转换来

输出列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。利用 * 号操作符,可以将元组解压为列表

l1 = [1,2,3]
l2 = ['a','b','c','d']
l3 = [1,2,'a',3]
for k,k1,k2 in zip(l1,l2,l3): #zip()同时循环多个列表取值
print(k,k1,k2) 

15、format()是一种格式化字符串的函数 ,基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序

print("博客:{name}, 访问地址 {url}".format(name="博客园地址", url="https://www.cnblogs.com/cocomoly/"))

# 通过字典设置参数
site = {"address": "我的博客地址", "url": "https://www.cnblogs.com/cocomoly/"}
print("我的博客地址:{address},访问地址 {url}".format(**site)) # 通过列表索引设置参数
my_list = ['博客园地址', 'https://www.cnblogs.com/cocomoly/']
print("博客园地址:{0[0]}, 访问地址 {0[1]}".format(my_list)) # "0" 是必须的

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

print(type(1))
X = type('X', (object,), dict(a=1)) # 产生一个新的类型 X 

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

print(abs(-45))
print(abs(100.12))

18、max()函数返回给定参数的最大值,参数可以为序列:  print(max(100,99,156))

19、min()函数返回给定参数的最小值,参数可以为序列:  print(min(100,99,156))

20、pow()函数返回x的y次方的值: import math    print(pow(x,y))

21、sum()函数对参数进行求和计算 : print(sum(100,99))  ; print(sum([1,2,4],1))

22、open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写

23、range() 函数可创建一个整数列表,一般用在 for 循环中。语法:range(start, stop[, step])

24、print()用于打印输出,最常见的一个函数。print 在Python3.x是一个函数,但在Python2.x版本只是一个关键字

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

#集合天生去重
s = {1,2,3,1,2,3}
s2 = set() #空集合
l = [1,2,2,3,4,5,4]
print(set(l))
print(s)

26、str() 函数将对象转化为string格式

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

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

29、tuple()函数将列表转换为元组

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

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

32、input() 函数接受一个标准输入数据,返回为 string 类型。这个函数是最最常用的了。在Python3.x中 raw_input() 和 input() 进行了整合,仅保留了input( )函数

33、id()函数用于获取对象的内存地址

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

 for row,stu in enumerate(stus):#控制行
for col,field in enumerate(stu):#控制列的
sheet.write(row,col,field)
book.save("students.xls")