Python之列举常见的内置函数

发布时间:2022-04-18 09:43:05 人气:103 作者:多测师

  abs()

  返回数字的绝对值

  map

  根据函数对指定序列做映射map()函数接收两个参数,一个是函数,一个是可迭代对象,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。返回值:  Python2 返回列表  Python3 返回迭代器例子1:

  def mul(x):

  return x*x

  n=[1,2,3,4,5]

  res=list(map(mul,n))

  print(res) #[1, 4, 9, 16, 25]例子2:abs() 返回数字的绝对值ret = map(abs,[-1,-5,6,-7])print(list(ret))# [1, 5, 6, 7]

  filter

  filter()函数接收一个函数 f(函数)和一个list(可迭代对象),这个函数 f的作用是对每个元素进行判断,返回 True或 False,

  filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。

  def is_odd(x):

  return x % 2 == 1

  v=list(filter(is_odd, [1, 4, 6, 7, 9, 12, 17]))

  print(v) #[1, 7, 9, 17]

  map与filter总结

  # filter 与 map 总结

  # 参数: 都是一个函数名 + 可迭代对象

  # 返回值: 都是返回可迭代对象

  # 区别:

  # filter 是做筛选的,结果还是原来就在可迭代对象中的项

  # map 是对可迭代对象中每一项做操作的,结果不一定是原来就在可迭代对象中的项

  isinstance\type

  isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。

  isinstance() 与 type() 区别:

  type() 不会认为子类是一种父类类型,不考虑继承关系。

  isinstance() 会认为子类是一种父类类型,考虑继承关系。

Python之列举常见的内置函数

  如果要判断两个类型是否相同推荐使用 isinstance()。

  # 例一a = 2print(isinstance(a,int)) # Trueprint(isinstance(a,str)) # False

  # type() 与 isinstance() 区别

  class A:

  pass

  class B(A):

  pass

  print("isinstance",isinstance(A(),A)) # isinstance True

  print("type",type(A()) == A) # type True

  print('isinstance',isinstance(B(),A) ) # isinstance True

  print('type',type(B()) == A) # type False

  zip 拉链函数

  # zip 拉链函数,

  # 将对象中对应的元素打包成一个个元组,

  # 然后返回由这些元组组成的列表迭代器。

  # 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

  print(list(zip([0,1,3],[5,6,7],['a','b'])))

  # [(0, 5, 'a'), (1, 6, 'b')]

  zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

  >>>a = [1,2,3]

  >>> b = [4,5,6]

  >>> c = [4,5,6,7,8]

  >>> zipped = zip(a,b) # 打包为元组的列表

  [(1, 4), (2, 5), (3, 6)]

  >>> zip(a,c) # 元素个数与最短的列表一致

  [(1, 4), (2, 5), (3, 6)]

  >>> zip(*zipped) # 与 zip 相反,可理解为解压,返回二维矩阵式

  [(1, 2, 3), (4, 5, 6)]

  reduce

  '''

  reduce() 函数

  reduce() 函数会对参数序列中元素进行累积

  函数将一个数据集合(链表、元组等)中的所有数据进行下列操作

  '''

  注意:

  Python3已经将reduce() 函数从全局名字空间里移除了,它现在被放置在 fucntools 模块里,如果想要使用它,则需要通过引入 functools 模块来调用 reduce() 函数:

  from functools import reduce

  def add(x,y):

  return x + y

  print(reduce(add,[1,2,3,4,5]))

  # 15

  print(reduce(lambda x, y: x+y, [1,2,3,4,5])) # 15

  print(reduce(add,range(1,101)))

  # 5050

  以上内容为大家介绍了Python之列举常见的内置函数,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线