0
点赞
收藏
分享

微信扫一扫

what's the python之内置函数

眼君 2022-03-23 阅读 74


what's the 内置函数?

  内置函数,内置函数就是python本身定义好的,我们直接拿来就可以用的函数。(python中一共有68中内置函数。)




下面我们由作用不同分别进行详述:(字体加粗的为重点要掌握的)

what

与作用域相关​:global和local

what

  • global——获取全局变量的字典
  • local——获取执行本方法所在命名空间内的局部变量的字典


str类型代码的执行​:eval、exec、compile

what

  • eval()​——将字符串类型的代码执行并返回结果
  • exec()​——将字符串类型的代码执行但不返回结果
  • compile ——将字符串类型的代码编译。代码对象能够通过exec语句来执行或者eval()进行求值


whatwhat

>>> #流程语句使用exec
>>> code1 = 'for i in range(0,10): print (i)'
>>> compile1 = compile(code1,'','exec')
>>> exec (compile1)
1
3
5
7
9


>>> #简单求值表达式用eval
>>> code2 = '1 + 2 + 3 + 4'
>>> compile2 = compile(code2,'','eval')
>>> eval(compile2)


>>> #交互语句用single
>>> code3 = 'name = input("please input your name:")'
>>> compile3 = compile(code3,'','single')
>>> name #执行前name变量不存在
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
name
NameError: name 'name' is not defined
>>> exec(compile3) #执行时显示交互命令,提示输入
please input your name:'pythoner'
>>> name #执行后name变量有值
"'pythoner'"

View Code


与数字相关的:

what


  • 数字——数据类型相关:​bool,int,float​,complex
  • 数字——进制转换相关:bin,oct,hex
  • 数字——数学运算:​abs​(输出为数字的绝对值),​divmod(​使用方法即divmod(数字1,数字2),输出为(数字1整除数字2后得到的数,余数)​),min,max,sum,round​(精确的功能)​,pow​(pow的使用方法即pow(数字1,数字2),数字1**数字2,即次方的形式)

whatwhat

print(divmod(7,3))#(2,1)

print(round(3.14159,2))#3.14
f = 4.197937590783291932703479 #-->二进制转换的问题
print(f)#4.197937590783292

View Code



与数据结构有关:

what

  • 序列——列表和元组相关的:list和tuple
  • 序列——字符串相关的:str,format,bytes,bytesarry,memoryview,ord(ord与chr互为倒数,不过这不需要掌握),chr(返回表示Unicode代码点为整数​i​的字符的字符串。例如,​​chr(97)​​返回字符串​​'a'​​,同时​​chr(8364)​​返回字符串​​'€'​​),ascii,repr
  • 序列:reversed(用l.reverse,将原列表翻转并赋值,用list(reversed(l)只是将原列表翻转看看,不改变原列表的值也就是说不覆盖),slice(切片的功能)
  • 数据集合——字典和集合:dict,set,frozenset
  • 数据集合:​len,sorted​(排序功能),​enumerate​(将一个列表的元素由“索引 值”的形式一一解包出来),all,any,zip,​filter​(一种过滤的功能)​,map​(一种迭代的功能)

whatwhat

l2 = [1,3,5,-2,-4,-6]
print(sorted(l2,key=abs,reverse=True))#[-6, 5, -4, 3, -2, 1]
print(sorted(l2))#[-6, -4, -2, 1, 3, 5]
print(l2)#[1, 3, 5, -2, -4, -6]


l = ['a','b']
for i,j in enumerate(l,1):
print(i,j)
#1 a
2 b



L = [1,2,3,4]
def pow2(x):
return x*x

l=map(pow2,L)
print(list(l))
# 结果:
[1, 4, 9, 16]







def is_odd(x):
return x % 2 == 1

l=filter(is_odd, [1, 4, 6, 7, 9, 12, 17])
print(list(l))
# 结果:
[1, 7, 9, 17]

View Code


其他:

what



输入输出:input(),print()

  • input​——与用户交互用的
  • print​——打印

whatwhat

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


#有关进度条打印的小知识
import time
import sys
for i in range(0,101,2):
time.sleep(0.1)
char_num = i//2 #打印多少个#
per_str = '%s%% : %s\n' % (i, '*' * char_num) if i == 100 else '\r%s%% : %s'%(i,'*'*char_num)
print(per_str,end='', file=sys.stdout, flush=True)
复制代码

View Code

  • callable​——查看参数是否能被调用
def func():pass
print(callable(func)) #参数是函数名,可调用,返回True
print(callable(123)) #参数是数字,不可调用,返回False


  • dir​——可用于查看一个数据类型的内置方法,类似于help,是一种帮助


附:可供参考的有关所有内置函数的文档https://docs.python.org/3/library/functions.html#object






举报

相关推荐

0 条评论