内置函数:内置函数就是python提供的,可以拿来直接用的函数

作用域相关

locals():返回当前作用域中的名字
globals():返回全局作用域中的内容

  1. def func():
  2. print('我早晨吃了一个苹果')
  3. def func1():
  4. print('我下午吃了一个桃')
  5. def func2():
  6. print('都挺好吃')
  7. func2()
  8. print(globals())#'func': <function func at 0x000001BA3E9F2EA0>
  9. print(locals())#func1 at 0x000001BA3EBC08C8>
  10. func1()
  11. func()

迭代器相关

  1. range():生成数据
  1. print(list(range(5)))
  2. [0, 1, 2, 3, 4]
  1. next():迭代器向下执行一次,内部实际使用了__next__()方法
    iter():获取迭代器,内部其实是使用了__iter__()方法来获取迭代器
  1. lis=[1,2,3,4,5]
  2. it=iter(lis)#获取迭代器
  3. print(next(it))#迭代器向下执行一次
  4. print(next(it))
  5. print(next(it))

字符串相关

  1. eval():执行字符串类型的代码,并返回结果,是求值
  1. a="{'你':'是','我':'的','大':'猪','蹄':'子儿'}"
  2. print(eval(a)['蹄'])
  1. exec():执行字符串类型的代码,如果是多行,注意缩进,是执行,没有返回结果
  1. exec('''for i in range(5):
  2. print(i)
  3. ''')
  4.  
  5. eval('''for i in range(5):
  6. print(i)
  7. ''') #invalid syntax(语法错误)
  1. compile(),将字符串中代码编译,代码能够通过exec()执行,或者通过eval()进行求值
    (有返回值形式的字符串用eval(),没有返回值类型的字符串用exec())
    语法:compile(source, filename, mode[, flags[, dont_inherit]])
    source -- 字符串或者ASTAbstract Syntax Trees)对象。。
    filename -- 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
    mode -- 指定编译代码的种类。可以指定为 exec, eval, single
  1. code='''for i in range(6):
  2. print(i)
  3. '''
  4. c1=compile(code,'',mode='exec') #如果是编译字符串,第二个文件的位置要''
  5. exec(c1)
  6. 0
  7. 1
  8. 2
  9. 3
  10. 4
  11. 5
  12.  
  13. code='1+2+3'
  14. c=compile(code,'',mode='eval')
  15. print(eval(c))#
  16.  
  17. 有用户交户的modesingle
  18. code='content=input("请输入想吃的?")'
  19. a=compile(code,'',mode='single') #有用户交户的用single
  20. exec(a)
  21. print(content) #pycharm里的报错信息,不一定是对的
  22. 请输入想吃的?太撑了,不想吃
  23. 太撑了,不想吃

输入输出相关

  1. input():获取用户输入的内容
    print():打印输出
  1. content=input('今天喝了多少水?')
  2. print(content)
  3. "C:\Program Files\Python36\python.exe"
  4. 今天喝了多少水?三杯
  5. 三杯

内存相关

  1. hash():获取到对象的hash
  1. lis=(1,2,3,4,5)
  2. print(hash(lis)) #
  1. 哈希计算之后是一串数字,可能很大,也可能很小还有可能是复数,哈希的目的是为了存储,
    但有一个缺点就是耗内存,是在以空间换取时间,哈希值尽量不要重复(在某些特定的环境下可能会重复)
  1. id():获取到对象的内存地址
  1. lis=[1,2,3,4,5,6]
  2. print(id(lis))#

文件操作相关

  1. open():用于打开一个文件,创建一个文件句柄
  2. f=open('daily.txt',mode='r',encoding='utf-8')

模块相关

  1. __import__():用于动态加载类和函数.import里面封装的__import__()

帮助

  1. help():用于查看函数或模块用途的详细说明
    dir():查看内置属性,方法,访问的是对象中的__dir__()方法
    dir()和help()的区别:
    help(list) #help除了方法属性外还有介绍
    print(dir(list)) #dir出来的是含有的方法属性

调用相关

  1. callable()用于检查一个对象是否可用,如果返回true,object有可能调用失败,
    如果返回的是False,一定不会调用成功
  1. lis=[1,2,3,4,55,6]
  2. a=1
  3. def func():
  4. b=a+1
  5. print(a)
  6. func()
  7. print(callable(func))

基础数据类型相关

  1. 数字相关:
    bool():将给定的值转换bool型,如果不给值返回False
    int():将给定的值转换int型,如果不给值返回False
    float():将给定的值转换int型,也就是小数
  1. a=''
  2. print(type(a))
  3. print(type(int(a)))
  4. print(type(bool(a)))
  5. print(type(float(a)))
  6. <class 'str'>
  7. <class 'int'>
  8. <class 'bool'>
  9. <class 'float'>
  10. print(float(1)) #1.0
  1. complex():创建一个复数,第一个参数为实部,第二个参数为虚部,或者第一个参数直接用字符串来描述复数(与数学中不同的是复数用a+bj而不是a+bi)
  1. print(complex(1,2)) #(1+2j)
  1. 进制转换:
    bin():将给的参数转换成二进制
    otc():将给的参数转换成八进制
    hex():将给的参数转换成十六进制 # 0 1 2 3 4 5 6 7 8 9 a b c d e f
  1. a=10
  2. print(bin(a))
  3. print(oct(a))
  4. print(hex(a))
  5. 0b1010
  6. 0o12
  7. 0xa
  1. 数学运算:
    abs():返回绝对值
  1. a=-5
  2. print(abs(a)) #
  1. divmod():返回商和余数
  1. print(divmod(6,3))#(2, 0)
  1. round():四舍五入(这台机器是五舍六入)
  1. print(round(4.5))
  1. pow(a,b):求ab次幂,如果输入三个数,则求完次幂后对第三个数取余
  1. print(pow(2,3)) #
  2. print(pow(2,3,2)) #
  1. sum():求和sum中放的必须是可迭代对象
  1. print(sum(1,2)) #'int' object is not iterable
  2. print(sum([1,2,3,4,5,6])) #
  1. min():最小值
    max():最大值
  1. lis=[1,2,3,4,5,6]
  2. print(min(lis),max(lis)) #1 6

数据结构相关

  1. 列表和元组:
    list() 将一个可迭代对象转换成列表
    tuple() 将一个可迭代对象转换成元组
  1. a='asdfghj'
  2. print(list(a)) #['a', 's', 'd', 'f', 'g', 'h', 'j']
  3. print(tuple(a)) #('a', 's', 'd', 'f', 'g', 'h', 'j')
  1. reversed():将一个序列翻转,返回翻转序列的迭代器
  1. a='asdfghjkl'
  2. it=reversed(a)
  3. print(it.__next__()) #l
  1. slice():列表的切片
  1. a=[1,2,3,4,5,6]
  2. s=slice(0,4,2)
  3. print(a[s]) #[1, 3] 值得注意的是打印的时候要用print(a[s])这种写法

字符串相关

  1. str():将数据转化成字符串
  1. a=12
  2. print(type(str(a))) #<class 'str'>
  1. format():与具体数据相关,用于计算小数精算等,format还可以用来格式化
  1. 字符串:
  2. print(format('test','<20')) #test 扩展为20个字符,并将test左对齐
  3. print(format('test','>20')) # test扩展为20个字符,并将test右对齐
  4. print(format('test','^20')) # test 扩展为20个字符,并将test居中
  5. 数值:
  6. print(format(3,'b')) #将三转换成二进制 #11
  7. print(format(97,'c')) #把97转换成97对应的Unicode字符 #a
  8. print(format(11,'d')) #将11转换成十进制 #11
  9. print(format(111122348542,'o')) #转换成八进制 #1473732074776
  10. print(format(465456461,'x')) #转换成16进制,用小写字母表示 #1bbe4d4d
  11. print(format(465456461,'X')) #转换成16进制,用大写字母表示 #1BBE4D4D
  12. print(format(11,'n')) #十进制
  13. print(format(11)) #
  14. 浮点数
  15. print(format(123456789,'e')) #1.234568e+08科学计数法,默认保留六位小数
  16. print(format(123456789,'0.2e')) #1.23e+08 科学计数法,默认保留两位小数(e小写)
  17. print(format(123456789,'0.2E')) #1.23E+08 #科学计数法,默认保留两位小数(e大写)
  18. print(format(123456789,'f')) #123456789.000000 小数点计数法,默认保留六位小数
  19. print(format(123456789,'0.2f')) #123456789.00 #小数点计数法,默认保留两位小数
  20. print(format(123456789,'0.10f')) #123456789.0000000000 小数点计数法,默认保留10位小数
  21. print(format(1.23456789e+10000,'F')) #INF 小数点计数法
  1. bytes();把字符串转换成某某类型,后面要加上编码类型
  1. s='你好!'
  2. print(bytes(s,encoding='utf-8'))
  1. bytearry()
  1. ret=bytearray('你好',encoding='utf-8')
  2. print(ret) #bytearray(b'\xe4\xbd\xa0\xe5\xa5\xbd')
  1. memoryview():查看bytes在内存中的情况
  1. s=memoryview('李小龙'.encode('utf-8'))
  2. print(s) #<memory at 0x0000014E41955F48>
  1. ord()输入字符,查找字符编码的位置
    chr()输入位置查找对应的字符
    ascii()是ascii码中的就有返回值,否则就返回\u
  1. print(ord('a')) #
  2. print(ord('中')) #
  3.  
  4. print(chr(97)) #a
  5. print(chr(20013)) #中
  6.  
  7. print(ascii('a')) #'a'
  8. print(ascii('中')) '\u4e2d'
  1. repr():返回正式的官方的字符串
  1. print(repr('大家好,我叫周杰伦'))
  2. print(repr('大家好/n,我叫周杰伦'))
  3. print(repr('大家好\n,我叫周杰伦'))
  4. print(repr('大家好\t,我叫周杰伦'))
  5. print(repr('大家好\\,我叫周杰伦'))
  6. print(repr('大家好\\\,我叫周杰伦'))
  7. print(repr('大家好\\\\,我叫周杰伦'))
  8. print(repr('周杰伦说"大家好,我叫周杰伦"'))
  9. print(repr("周杰伦说'大家好,我叫周杰伦'"))
  10.  
  11. '大家好,我叫周杰伦'
  12. '大家好/n,我叫周杰伦'
  13. '大家好\n,我叫周杰伦'
  14. '大家好\t,我叫周杰伦'
  15. '大家好\\,我叫周杰伦'
  16. '大家好\\\\,我叫周杰伦'
  17. '大家好\\\\,我叫周杰伦'
  18. '周杰伦说"大家好,我叫周杰伦"'
  19. "周杰伦说'大家好,我叫周杰伦'"
  1. dict{}创建一个字典
  1. dict={}
  2. print(dict)
  1. set():创建一个集合
  1. s=set()
  2. print(type(s)) #<class 'set'>
  1. frozenset():创建一个冻结的集合,冻结的集合不能进行增加和删除操作
  1. frozenset={}
  2. print(frozenset)
  1. len():返回一个对象中元素的个数
  1. enumerate():获取集合的枚举对象
  1. lis=[1,2,3,4]
  2. for i, j in enumerate(lis):
  3. print(i,j)
  4. 0 1
  5. 1 2
  6. 2 3
  7. 3 4
  1. all()可迭代对象中 全部是true才是true:
    any()可迭代对象中有一个是true就是true
  1. print(all([1,2,3,4,5])) #True
  2. print(all([1,2,3,4,5,0])) #False
  3. print(any([1,2,3,4,5])) #True
  4. print(any([1,2,3,4,5,0])) #True

python中的内置函数(一)的更多相关文章

  1. python中的内置函数,递归,递归文件显示(二),二分法

    1.部分内置函数 repr()显示出字符串的官方表示形式,返回一个对象的string形式 # repr 就是原封不动的输出, 引号和转义字符都不起作用 print(repr('大家好,\n \t我叫周 ...

  2. python中的内置函数(一), lambda, filter, map

    https://www.processon.com/view/link/5c10da0ce4b099ae3e137bf6 1.内置函数 内置函数就是python中提供的,可以直接拿来用的函数,比如pr ...

  3. python中一些内置函数实例

    lambda表达式 简单函数可用lambda表达式 1. def f1() return(123) r1=f1() print() 2. f2=lambda:123 r2=f2() print() 以 ...

  4. python中的内置函数(2)

    一.lambda匿名函数定义:为了解决一些简单的需求而设计的一句话函数例子:计算n的n次方 def func(n):#正常的写法 return n**2 f=lambda n:n**2 这里的lamb ...

  5. 2018.8.14 python中的内置函数(68个)

    主要内容: python中68个内置函数的功能及使用方法

  6. python学习之【第十篇】:Python中的内置函数

    1.前言 内置函数,就是Python内部预先定义好的函数,可以直接使用,Python中内置函数有以下这么多个: 2.map() 描述: map() 会根据提供的函数对指定序列做映射.第一个参数 fun ...

  7. Python中max()内置函数使用(list)

    在学习完列表和元组的基础知识后,做到一个题: 求出列表中频次出现最多的元素. 学习到了python内置函数max的用法 其参数key的用法 匿名函数lamda的用法 python内置函数max() m ...

  8. python中常用内置函数和关键词

    Python 常用内置函数如下: Python 解释器内置了很多函数和类型,您可以在任何时候使用它们.以下按字母表顺序列出它们. 1. abs()函数 返回数字的绝对值. print( abs(-45 ...

  9. Python中的内置函数__init__()的理解

    有点意思,本来我是学习java的.总所周知,java也有构造函数,而python在面向对象的概念中,也有构造函数.它就是 __init__(self) 方法. 其实类似于__init__()这种方法, ...

随机推荐

  1. 【17.76%】【codeforces round 382C】Tennis Championship

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  2. matlab 中使用 GPU 加速运算

    为了提高大规模数据处理的能力,matlab 的 GPU 并行计算,本质上是在 cuda 的基础上开发的 wrapper,也就是说 matlab 目前只支持 NVIDIA 的显卡. 1. GPU 硬件支 ...

  3. Bitmap,byte[],Drawable相互转化

    1.Drawable就是一个可画的对象.其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable).还有可能是一个图层(LayerDrawable),我们依据绘图 ...

  4. PCI GXL学习之二次开发篇

    作者:朱金灿 来源:http://blog.csdn.net/clever101 gxl的二次开发分初级和高级之分.初级是gxl提供了几百个模块供你编排成不同的作业.高级就是你可以编写你的算法模块,然 ...

  5. 链接hdf5库出现错误的解决办法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 在链接hdf5库出现一些链接错误: error LNK2001: 无法解析的外部符号 _H5T_NATIVE_DOUB ...

  6. docker入门0:常识知识扫盲

    Docker 是一个开源项目,基于 Go 语言实现,是一套轻量级的操作系统虚拟化解决方案.用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单. Docker通常用于如下场景: web ...

  7. Android无线调试——抛开USB数据线

    开发Android的朋友都知道,真机调试需要把手机与PC相连,然后把应用部署到真机上进行安装和调试.长长的USB线显得很麻烦,而且如果需要USB接口与其他设备连接的话显得很不方便.今天介绍一种不通过U ...

  8. Android子线程中更新UI的4种方法

    方法一:用Handler 1.主线程中定义Handler: Handler mHandler = new Handler() { @Override public void handleMessage ...

  9. 程序员,用NuGet管理好你的包包(转)

    每个女人都有很多包包:其实男人也有,但只有会写程序的男人才有 —— 代码世界中的大“包”小“包”.这些大包小包,有花钱买的,有从开源市场淘的,也有自己或同事亲手制作的. 包包有个特点:容易坏,更新快, ...

  10. broadAnywhere:Broadcast组件权限绕过漏洞(Bug: 17356824)

    原创内容,转载请注明出处 http://retme.net/index.php/2014/11/14/broadAnywhere-bug-17356824.html Lolipop源代码已经放出有些日 ...