• python中的内置函数


    说起内置函数,脑壳痛,然后整理了下。

    这么看着比较舒服了。

    先从分类中少的说起吧

    作用域相关:

    global():获取全局变量的字典。

    local():获取执行本方法所在命名空间内的局部变量的字典(在全局中执行得到的结果与global()得到的结果相同)。

    迭代器生成器相关:

    next():调用迭代器或生成器中的一个值

    iter():iterable.iter() = itertor

    range():range(起始位置)     range(起始位置,结束位置)   range(起始位置,结束位置,步长)

    文件操作相关:

    open()

    open()  打开一个文件,返回一个文件操作符(文件句柄)

    操作文件的模式有r,w,a,r+,w+,a+ 共6种,每一种方式都可以用二进制的形式操作(rb,wb,ab,rb+,wb+,ab+)

    可以用encoding指定编码

    输入输出相关:

    input():用法

    s = input('请输入内容:') #输入的内容为字符串类型
    print(s)
    

    print():

    #源码分析
    def print(self,*args,sep='',end='
    ',file=None) # known special case of print
        '''
           print(value, ..., sep=' ', end='
    ', file=sys.stdout, flush=False)
           file:默认输出到屏幕,如果设置为文件句柄,则输到屏幕
           sep: 打印多个输出值之间的分隔符,默认为空格
           end:每次打印的结尾,默认为换行
           flush:立即把内容输出到流文件,不作缓存
        '''

    输出到文件:

    f = open('tmp_file','w')
    print(123,456,sep=',',file = f,flush=True)

    利用flush关键字写个进度条

    import time
    for i in range(0,101,2):
        time.sleep(0.1)
        num = i//2
        tu = '
    %s%% %s'%(i, '#'*num)  #
    作用是把光标移到行首单不换行
        print(tu,end='',flush=True) #flush默认是False 改为True刷新每次输出
        

    内存相关:

    id(x):x是参数,返回一个变量x的内存地址

    hash(x):x是参数,返回一个可hash变量的哈西值,如果x是不可哈希变量则会报错

    t = (1,2,3)
    l = [1,2,3]
    print(hash(t))  #可hash
    print(hash(l))  #会报错

    hash函数会根据一个内部的算法对当前可hash变量进行处理,返回一个int数字。

    *每一次执行程序,内容相同的变量hash值在这一次执行过程中不会发生改变。

    字符串类型代码的执行:

    eval:可以将字符串数据类型的python代码执行,通过拼接字符串的方式来执行不同的代码--简化代码

    eval('print(1+2+3+4)') # 有返回值
    ret = eval('1+2/3*4')
    print(ret)

    exec:跟eval作用相同,区别是没有返回值

    compile:可以节省时间

    用法:
    code1 = 'for i in range(0,10): print (i)' # 这是一句代码 字符串
    compile1 = compile(code1,'','exec') # 预编译 python-> 字节码
    exec (compile1) # 解释

    帮助

    help:

    使用:在pycharm的工作台中选中Python Console

    方式一:输入help() 进入帮助页面,输入要查的数据类型,帮助我们打印具体的信息。q退出帮助

    方式二:print(help(str))  print(help('abc'))

    查看内置属性:

    dir():研究或了解一个新型的数据类型时用到

        用法:   

    print(dir('需要查看的数据变量'))

    调用相关

    callable:callable(o),o是参数,看这个变量是不是可调用

    def func():pass
    print(callable(func)) #参数是函数名,可调用,返回True
    print(callable(123)) #参数是数字,不可调用,返回False

    模块相关

    __import__

    导入一个模块

    import time
    os = __import__('os')
    print(os.path.abspath('.'))

    剩下的下次更。。。

  • 相关阅读:
    编译资源收集
    volatile和synchronized到底啥区别?多图文讲解告诉你
    沙雕与大婶 | Mock掉你的外部依赖吧
    全网最详细的一篇Flutter 尺寸限制类容器总结
    一篇带你看懂Flutter叠加组件Stack
    【MySQL】:事务四大特性与隔离级别
    Dubbo 入门-细说分布式与集群
    Java 线程基础知识
    SpringBoot图文教程9—SpringBoot 导入导出 Excel 「Apache Poi」
    搭建博客、自己的小窝?快来看看这些开源静态网站生成器
  • 原文地址:https://www.cnblogs.com/Wj-Li/p/10864921.html
Copyright © 2020-2023  润新知