Python标准库学习--->1、内置函数(57-69个)

57、 class set([iterable]):返回一个新的 set 对象,可以选择带有从 iterable 获取的元素。创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。

>>> a=set('hello world')
>>> b=set('nihao lilei')
>>> a,b
({'e', 'w', 'd', 'r', 'o', ' ', 'l', 'h'}, {'e', 'n', 'o', ' ', 'l', 'i', 'a', 'h'}) #重复的元素会被删除
>>> a&b  #交集
{'e', 'o', ' ', 'l', 'h'}
>>> a|b #并集
{'e', 'w', 'd', 'n', 'r', 'o', ' ', 'l', 'i', 'a', 'h'}
>>> a-b #差集
{'r', 'w', 'd'}

58、 setattr(object, name, value):此函数与 getattr() 两相对应。 其参数为一个对象、一个字符串和一个任意值。 字符串指定一个现有属性或者新增属性。 函数会将值赋给该属性,只要对象允许这种操作。 例如,setattr(x, ‘foobar’, 123) 等价于 x.foobar = 123。

59、 class slice(stop),class slice(start, stop[, step]):返回一个表示由 range(start, stop, step) 所指定索引集的 slice 对象。 其中 start 和 step 参数默认为 None。 切片对象具有仅会返回对应参数值(或其默认值)的只读数据属性 start, stop 和 step。

>>> sl=slice(6)
>>> sl
slice(None, 6, None)
>>> arr = range(10)
>>> arr
range(0, 10)
>>> arr[sl]
range(0, 6)

60、 sorted(iterable, *, key=None, reverse=False):根据 iterable 中的项返回一个新的已排序列表。

reverse 为一个布尔值。 如果设为 True,则每个列表元素将按反向顺序比较进行排序。

>>> li=list(range(10))
>>> li
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> sorted(li,reversed=True)
>>> li1=sorted(li,reverse=True)
>>> li1
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

61、 @staticmethod:将方法转换为静态方法。

>>> class a(object):
	@staticmethod
	def f():
		print('hello world')

>>> a.f() # 静态方法无需实例化
hello world
>>> x=a()
>>> x.f()  # 也可以实例化后调用
hello world

62、 class str(object=’’):class str(object=b’’, encoding=‘utf-8’, errors=‘strict’)
返回一个 str 版本的 object 。

>>> x=11
>>> str(x)
'11'

63、 sum(iterable, /, start=0):求和。able 的项通常为数字,而 start 值则不允许为字符串。
iterable – 可迭代对象,如:列表、元组、集合。
start – 指定相加的参数,如果没有设置这个值,默认为0。

>>> li = list(range(10))
>>> li
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> sum(li) #0到9求和
45
>>> sum(li,start=5) #对li求和后加5
50

64、 super([type[, object-or-type]]):用于调用父类(超类)的一个方法。

>>> class a(object):
	def f(self):
		print('hello world')

>>> class b(a):
	def f(self):
		super().f()
		print('this is me')

>>> x=b()
>>> x.f()
hello world
this is me

65、 class tuple([iterable]):虽然被称为函数,但 tuple 实际上是一个不可变的序列类型,将可迭代系列(如列表)转换为元组。

>>> li=['baidu','sougou','google']
>>> t=tuple(li)
>>> t
('baidu', 'sougou', 'google')

66、 class type(object),class type(name, bases, dict):传入一个参数时,返回 object 的类型。如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象。
一个对象用的较多。

>>> type(1)
<class 'int'>
>>> type('1')
<class 'str'>
>>> type([1])
<class 'list'>
>>> type((1,))
<class 'tuple'>
>>> type({'1':1})
<class 'dict'>

67、 vars([object]):返回对象object的属性和属性值的字典对象。

>>> print(vars())
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>}

68、 zip(*iterables):创建一个聚合了来自每个可迭代对象中的元素的迭代器。用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。

我们可以使用 list() 转换来输出列表。

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

>>> a=[1,2,3,4,5,6]
>>> b=('1','2','3','4')
>>> li=list(zip(a,b))
>>> li
[(1, '1'), (2, '2'), (3, '3'), (4, '4')]
>>> a1,b1=zip(*zip(a,b))
>>> list(a1)
[1, 2, 3, 4]
>>> list(b1)
['1', '2', '3', '4']

69、 import(name, globals=None, locals=None, fromlist=(), level=0):于动态加载类和函数 。返回元组列表。

如果一个模块经常变化就可以使用 import() 来动态载入。

>>> import os
>>> __import__("a") #到如a.py 模块,由于我这里没有a.py模块文件,所以会报错
Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    __import__("a")
ModuleNotFoundError: No module named 'a'
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值