what's the python之内置函数
what's the 内置函数?
内置函数,内置函数就是python本身定义好的,我们直接拿来就可以用的函数。(python中一共有68中内置函数。)
|
下面我们由作用不同分别进行详述:(字体加粗的为重点要掌握的)
与作用域相关:global和local
- global——获取全局变量的字典
- local——获取执行本方法所在命名空间内的局部变量的字典
str类型代码的执行:eval、exec、compile
- eval()——将字符串类型的代码执行并返回结果
- exec()——将字符串类型的代码执行但不返回结果
- compile ——将字符串类型的代码编译。代码对象能够通过exec语句来执行或者eval()进行求值
>>> #流程语句使用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'"
与数字相关的:
- 数字——数据类型相关: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,即次方的形式)
print(divmod(7,3))#(2,1) print(round(3.14159,2))#3.14
f = 4.197937590783291932703479 #-->二进制转换的问题
print(f)#4.197937590783292
与数据结构有关:
- 序列——列表和元组相关的: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(一种迭代的功能)
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]
其他:
输入输出:input(),print()
- input——与用户交互用的
- print——打印
#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)
复制代码
- callable——查看参数是否能被调用
def func():pass
print(callable(func)) #参数是函数名,可调用,返回True
print(callable(123)) #参数是数字,不可调用,返回False
- dir——可用于查看一个数据类型的内置方法,类似于help,是一种帮助
附:可供参考的有关所有内置函数的文档https://docs.python.org/3/library/functions.html#object
what's the python之内置函数的更多相关文章
- Python之内置函数
内置函数 python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数. 分类学习内置函数: 总共 ...
- python之内置函数(一)
一.内置函数一1.内置函数总览 abs() dict() help() min() setattr()all() dir() hex() next() slice() any() divmod() i ...
- python之内置函数(二)与匿名函数、递归函数初识
一.内置函数(二)1.和数据结构相关(24)列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素).tuple:将一个可迭代对象转化成元组(如果是字典,默认将k ...
- python之内置函数与匿名函数
一内置函数 # print(abs(-1)) # print(all([1,2,'a',None])) # print(all([])) #bool值为假的情况:None,空,0,False # # ...
- python之内置函数,匿名函数
什么是内置函数? 就是Python给你提供的,拿来直接用的函数,比如print,input等等.其实就是我们在创建.py的时候python解释器所自动生成的内置的函数,就好比我们之前所学的作用空间 内 ...
- python之内置函数,匿名函数,递归函数
一. 内置函函数 什么是内置函数?就是Python给你提供的,拿来直接用的函数,比如print,input等等.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就 ...
- python之内置函数(lambda,sorted,filter,map),递归,二分法
一.lambda匿名函数 为了解决一些简单需求而设计的一句话函数,lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数. 语法: 函数名 = lambda 参数 : 返回值 ...
- Python之内置函数一
一:绝对值,abs i = abs(-123) print(i) # 打印结果 123 二:判断真假,all,与any 对于all # 每个元素都为真,才是True # 假,0,None," ...
- python之内置函数:map ,filter ,reduce总结
map函数: #处理序列中的每个元素,得到的结果是一个'列表',该列表元素个数及位置与原来一样 filter函数: #遍历序列中的每个元素,判断每个元素得到一个布尔值,如果是true,则留下来 peo ...
随机推荐
- [Hinton] Neural Networks for Machine Learning - Basic
Link: Neural Networks for Machine Learning - 多伦多大学 Link: Hinton的CSC321课程笔记1 Link: Hinton的CSC321课程笔记2 ...
- [JS] ECMAScript 6 - String, Number, Function : compare with c#
字符串的扩展 正则的扩展 数值的扩展 函数的扩展 字符串的扩展 js 字符的 Unicode 表示法 codePointAt() String.fromCodePoint() 字符串的遍历器接口 at ...
- EGit系列第三篇——远程提交代码
接着上篇,把本地项目提交一次才能Pull,为什么要Pull而不直接Remote Push呢,因为本地和远程仓库内容不一样(通常在远程仓库第一次新建项目会带一个README.md), 要先把远程仓库的东 ...
- Qt编写的开源帖子集合(懒人专用)
回顾自己学习Qt以来九年了,在这九年多时间里面,从本论坛学习不到不少的东西,今天特意整了一下自己开源过的资源的帖子,整理一起方便大家直接跳转下载,不统计不知道,一统计吓一跳,不知不觉开源了这么多代码, ...
- 关于JSON call 的一个小问题
如图当我们在做Json call 的时候,一定要切记,建立的model 一定要与JSON 字符串严格的一一对应,否者会解析不出来
- sencha touch 入门学习资料大全(2015-12-30)
现在sencha touch已经更新到2.4.2版本了 重新整理一下资料 官方网站:http://www.sencha.com/products/touch/ 在线文档:http://docs.sen ...
- [IOI 2000]POJ 1160 Post Office
Post Office Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 22278 Accepted: 12034 Descrip ...
- sublime3 配置go的开发环境
配置go的环境变量:https://studygolang.com/articles/4910 配置sublime:https://studygolang.com/articles/4938
- ubuntu下安装Python3
到www.python.org网站下载python3.3.2 Gzipped source tar ball (3.3.2) (sig), ~ 16 MB 解压tar vxzf Python3.3.2 ...
- MongoDB数据库连接失败
win10下原来一直在用的MongoDB突然连接不上了,报错如下: 解决方法是:net start MongoDB重启服务