python--内置函数

内置函数:68个

作用域相关

locals()  局部作用域
globals() 全局作用域

在全局执行者两个方法,结果相同
如果在局部执行,函数内部,locals表示函数内的名字,globals始终不变

迭代器/生成器相关

iter()    迭代对象变迭代器
next()    启动迭代器,返回值
range()   范围,步长   取得是可迭代对象,最好循环取结果

其他

  字符串类型代码的执行:  

  eval() 将字符串的两个号去掉执行,神奇用法,可以用来将字符串变成条件  有返回值
  exec() 同上,不过没有返回值
  compile  有三个参数:source 动态执行代码段  filename 代码文件名称 model,指定编译代码的种类
  code1 = 'for i in range(0,10):print(i)'
  compile1=compile('code1','',exec)
  exec(compile1)

  当需要对某一个字符串数据类型的python代码多次执行的时候,再用
  直接拿来执行的方式一定不要随便用
  如果非用不可,你也要做最起码的检测 

输入和输出 

  input()  输入字符串
  print()  输出  end''这样可以不带换行符  sep‘’中间可以添加分隔符  file=f  可以打印到文件中
  sys.stdout.flush() 这样的话print就不会等看还有没有循环要打印的,而是直接打出来,要不会等所有一起打到屏幕
  .flush()立刻怎么怎么样  

进度条实例 

import time
  import sys
  for i in range(0,101,2):
 time.sleep(0.1)
 char_num = i//2      #打印多少个#
 per_str = '
%s%% : %s
' % (i, '*' * char_num) if i == 100 else '
%s%% : %s'%(i,'*'*char_num)
 print(per_str,end='', file=sys.stdout, flush=True)

  将光标移动到行首但不换行 

内存相关 

hash()可以字符串可以数字,其他可变数据类型都不能被hash  hash结果是一个数字,一个代码内执行起来同一个可hash对象永远是一样的
  但是再执行一次就不一样了    hash是一种摘要算法  可以做字典的key  数据库字典应用
  在python的一次执行中,对于相同的可hash对象来说,得到的是相同的数字
  id() 身份运算  is  is not 不仅比较值的大小还比较内存地址是否一致
  加空格的话地址会不相同 

文件操作

  open() 

模块相关

  import  后面模块 

帮助

  help:
  进入help模式 help()  输入q是退出   括号里面可以制定查询的对象的帮助信息

  调用相关

  callable   判断一个对象是否可以调用 

查看内置属性

  dir   用法  print(dir())括号内使用来查找内置属性的对象
  print(dir(__builtins__))   所有内置函数

基本数据类型相关

filter和map:
filter()  过滤,括号内先函数后可迭代对象  过滤条件在函数里面  后面是过滤对象,前面是过滤条件函数

def func(n):
    if n%2==0:
   return True                 #返回的是条件结果
lst = [1,2,3,4,5,6,7,8]
ret = filter(func,lst)
print(ret)    #ret应该是一个可迭代对象
for i in ret:
    print(i)


map()  同filter前面是函数后面是可迭代对象,
例子:

lst=[1,2,3,4,5,6,7]
def func(item):
    return item*item        #这个返回的结果是func的值
print(list(map(func,lst)))

se = {'a','b','c'}
for i in enumerate(se,1)     #给可迭代对象加序号,后面从什么起始
    print(i[0],i[1],se[i[1]])
原文地址:https://www.cnblogs.com/gaoshengyue/p/7489824.html