文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么使用Python内置函数

2023-06-01 23:26

关注

这篇文章主要介绍“怎么使用Python内置函数”,在日常操作中,相信很多人在怎么使用Python内置函数问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用Python内置函数”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

abs()

返回数字绝对值

>>> abs(-100)100>>> abs(10)10>>>

all()

判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False

>>> all([100,100,100])True>>> all([3,0,1,1])False>>>

any()

判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True

>>> any([0,0,0,0])False>>> any([0,0,0,1])True>>>

ascii()

调用对象的repr()方法,获取该方法的返回值

>>> ascii('test')"'test'">>>

bin()

将十进制转换为二进制

>>> bin(100)'0b1100100'>>>

oct()

将十进制转换为八进制

>>> oct(100)'0o144'>>>

hex()

将十进制转换为十六进制

>>> hex(100)'0x64'>>>

bool()

测试对象是True,还是False

>>> bool(1)True>>> bool(-1)True>>> bool()False>>>

bytes()

将一个字符转换为字节类型

>>> s = "blxt">>> bytes(s,encoding='utf-8')b'blxt'>>>

str()

将字符、数值类型转换为字符串类型

>>> str(123)'123'>>>

callable()

检查一个对象是否是可调用的

False>>> callable(str)True>>> callable(int)True>>> callable(0)False>>>

chr()

查看十进制整数对应的ASCll字符

>>> chr(100)'d'>>>

ord()

查看某个ascii对应的十进制

>>> ord('a')97>>>

classmethod()

修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等

#!/usr/bin/python# -*- coding: UTF-8 -*-class A(object):    bar = 1    def func1(self):          print ('foo')     @classmethod    def func2(cls):        print ('func2')        print (cls.bar)        cls().func1()   # 调用 foo 方法

输出结果:

func21foo

compile()

将字符串编译成python能识别或者可以执行的代码。也可以将文字读成字符串再编译

>>> blxt = "print('hello')">>> test = compile(blxt,'','exec')>>> test<code object <module> at 0x02E9B840, file "", line 1>>>> exec(test)hello>>>

complex()

创建一个复数

>>> complex(13,18)(13+18j)>>>

delattr()

删除对象属性

#!/usr/bin/python# -*- coding: UTF-8 -*-class Coordinate:    x = 10    y = -5    z = 0point1 = Coordinate() print('x = ',point1.x)print('y = ',point1.y)print('z = ',point1.z)delattr(Coordinate, 'z')print('--删除 z 属性后--')print('x = ',point1.x)print('y = ',point1.y)# 触发错误print('z = ',point1.z)

输出结果:

>>> x =  10y =  -5z =  0--删除 z 属性后--x =  10y =  -5Traceback (most recent call last):  File "C:\Users\fdgh\Desktop\test.py", line 22, in <module>    print('z = ',point1.z)AttributeError: 'Coordinate' object has no attribute 'z'>>>

dict()

创建数据字典

>>> dict(){}>>> dict(a=1,b=2){'a': 1, 'b': 2}>>>

dir()

函数不带参数时,返回当前范围内的变量、方法和定义的类型列表

>>> dir()['Coordinate', '__annotations__', '__builtins__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'point1', 'y']>>>

divmod()

分别取商和余数

>>> divmod(11,2)(5, 1)>>>

enumerate()

返回一个可以枚举的对象,该对象的next()方法将返回一个元组

>>> blxt = ['a','b','c','d']>>> list(enumerate(blxt))[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]>>>

eval()

将字符串str当成有效表达式来求值并返回计算结果取出字符串中内容

>>> blxt = "5+1+2">>> eval(blxt)8>>>

exec()

执行字符串或complie方法编译过的字符串,没有返回值

>>> blxt = "print('hello')">>> test = compile(blxt,'','exec')>>> test<code object <module> at 0x02E9B840, file "", line 1>>>> exec(test)hello>>>

filter()

过滤器,构建一个序列

#过滤列表中所有奇数#!/usr/bin/python# -*- coding: UTF-8 -*-def is_odd(n):    return n % 2 == 1newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])print(newlist)

输出结果:

[ 1, 3, 5, 7, 9 ]

float()

将一个字符串或整数转换为浮点数

>>> float(3)3.0>>> float(10)10.0>>>

format()

格式化输出字符串

>>> "{0} {1} {3} {2}".format("a","b","c","d")'a b d c'>>> print("网站名:{name},地址:{url}".format(name="blxt",url="www.blxt.best"))网站名:blxt,地址:www.blxt.best>>>

frozenset()

创建一个不可修改的集合

>>> frozenset([2,4,6,6,7,7,8,9,0])frozenset({0, 2, 4, 6, 7, 8, 9})>>>

getattr()

获取对象属性

>>>class A(object):...     bar = 1... >>> a = A()>>> getattr(a, 'bar')        # 获取属性 bar 值1>>> getattr(a, 'bar2')       # 属性 bar2 不存在,触发异常Traceback (most recent call last):  File "<stdin>", line 1, in <module>AttributeError: 'A' object has no attribute 'bar2'>>> getattr(a, 'bar2', 3)    # 属性 bar2 不存在,但设置了默认值3>>>

globals()

返回一个描述当前全局变量的字典

>>> print(globals()) # globals 函数返回一个全局变量的字典,包括所有导入的变量。{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', '__doc__': None, 'a': 'runoob', '__package__': None}

hasattr()

函数用于判断对象是否包含对应的属性

>>>class A(object):...     bar = 1... >>> a = A()>>> hasattr(a,'bar')True>>> hasattr(a,'test')False

hash()

返回对象的哈希值

>>>class A(object):...     bar = 1... >>> a = A()>>> hash(a)-2143982521>>>

help()

返回对象的帮助文档

>>>class A(object):...     bar = 1... >>> a = A()>>> help(a)Help on A in module __main__ object:class A(builtins.object) |  Data descriptors defined here: |   |  __dict__ |      dictionary for instance variables (if defined) |   |  __weakref__ |      list of weak references to the object (if defined) |   |  ---------------------------------------------------------------------- |  Data and other attributes defined here: |   |  bar = 1>>>

id()

返回对象的内存地址

>>>class A(object):...     bar = 1... >>> a = A()>>> id(a)56018040>>>

input()

获取用户输入内容

>>> input()... test'test'>>>

int()

用于将一个字符串或数字转换为整型

>>> int('14',16)20>>> int('14',8)12>>> int('14',10)14>>>

isinstance()

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

>>> test = 100>>> isinstance(test,int)True>>> isinstance(test,str)False>>>

issubclass()

用于判断参数 class 是否是类型参数 classinfo 的子类

#!/usr/bin/python# -*- coding: UTF-8 -*-class A:    passclass B(A):    passprint(issubclass(B,A))    # 返回 True

iter()

返回一个可迭代对象,sentinel可省略

>>>lst = [1, 2, 3]>>> for i in iter(lst):...     print(i)... 123

len()

返回对象的长度

>>> dic = {'a':100,'b':200}>>> len(dic)2>>>

list()

返回可变序列类型

>>> a = (123,'xyz','zara','abc')>>> list(a)[123, 'xyz', 'zara', 'abc']>>>

map()

返回一个将function应用于iterable中每一项并输出其结果的迭代器

>>>def square(x) :            # 计算平方数...     return x ** 2... >>> map(square, [1,2,3,4,5])   # 计算列表各个元素的平方[1, 4, 9, 16, 25]>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数[1, 4, 9, 16, 25]# 提供了两个列表,对相同位置的列表数据进行相加>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])[3, 7, 11, 15, 19]

max()

返回最大值

>>> max (1,2,3,4,5,6,7,8,9)9>>>

min()

返回最小值

>>> min (1,2,3,4,5,6,7,8)1>>>

memoryview()

返回给定参数的内存查看对象(memory view)

>>>v = memoryview(bytearray("abcefg", 'utf-8'))>>> print(v[1])98>>> print(v[-1])103>>> print(v[1:4])<memory at 0x10f543a08>>>> print(v[1:4].tobytes())b'bce'>>>

next()

返回可迭代对象的下一个元素

>>> a = iter([1,2,3,4,5])>>> next(a)1>>> next(a)2>>> next(a)3>>> next(a)4>>> next(a)5>>> next(a)Traceback (most recent call last):  File "<pyshell#72>", line 1, in <module>    next(a)StopIteration>>>

object()

返回一个没有特征的新对象

>>> a = object()>>> type(a)<class 'object'>>>>

open()

返回文件对象

>>>f = open('test.txt')>>> f.read()'123/123/123'

pow()

base为底的exp次幂,如果mod给出,取余

>>> pow (3,1,4)3>>>

print()

打印对象

class property()

返回property属性

class C(object):    def __init__(self):        self._x = None    def getx(self):        return self._x    def setx(self, value):        self._x = value    def delx(self):        del self._x    x = property(getx, setx, delx, "I'm the 'x' property.")

range()

生成一个不可变序列

>>> range(10)range(0, 10)>>>

reversed()

返回一个反向的iterator

>>> a = 'test'>>> a'test'>>> print(list(reversed(a)))['t', 's', 'e', 't']>>>

round()

四舍五入

>>> round (3.33333333,1)3.3>>>

class set()

返回一个set对象,可实现去重

>>> a = [1,2,3,4,5,5,6,5,4,3,2]>>> set(a){1, 2, 3, 4, 5, 6}>>>

class slice()

返回一个表示有1range所指定的索引集的slice对象

>>> a = [1,2,3,4,5,5,6,5,4,3,2]>>> a[slice(0,3,1)][1, 2, 3]>>>

sorted()

对所有可迭代的对象进行排序操作

>>> a = [1,2,3,4,5,5,6,5,4,3,2]>>> sorted(a,reverse=True)[6, 5, 5, 5, 4, 4, 3, 3, 2, 2, 1]>>>

@staticmethod

将方法转换为静态方法

#!/usr/bin/python# -*- coding: UTF-8 -*-class C(object):    @staticmethod    def f():        print('blxt');C.f();          # 静态方法无需实例化cobj = C()cobj.f()        # 也可以实例化后调用

输出结果:

    test    test

sum()

求和

a = [1,2,3,4,5,5,6,5,4,3,2]>>> sum(a)40>>>

super()

返回一个代理对象

class A:     def add(self, x):         y = x+1         print(y)class B(A):    def add(self, x):        super().add(x)b = B()b.add(2)  # 3

tuple()

不可变的序列类型

>>> a = 'www'>>> b =tuple(a)>>> b('w', 'w', 'w')>>>

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 相反,*zipped 可理解为解压,返回二维矩阵式[(1, 2, 3), (4, 5, 6)]

到此,关于“怎么使用Python内置函数”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯