Python基础-----内置函数(不全)

#!/usr/bin/env python
# -*- coding:utf-8 -*-
##########################################################################################
1. abs(number)
用于返回number的绝对值
print(abs(-2))

##########################################################################################
2.
a.all(iterable)
用于判断序列中所有元素是否bool值都为True,是则返回True,反之有一个为False,则False
(如果iterable为空则也返回True)
print(all(['1',''])) #列表中含有空字符串,该元素为False,则最终整体返回False
print(all('')) #返回True

b. any(iterable)
用于判断序列中所有元素是否bool值都为False,是则返回False,反之有一个为True,则True
(如果iterable为空则也返回True)
print(any(['',0]))

##########################################################################################
3. chr(ascii) ord(str)
分别用于将ascii码转换为对应的字符,将字符串转换为对应的ascii值
print(chr(97))

##########################################################################################
4. divmod(numbera,numberb)
把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。
可用于网页分页,总工有多少记录,每页显示多少记录

##########################################################################################
5. enumerate(sequence, [start=0])
用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

##########################################################################################
6. eval(expression[, globals[, locals]])
expression -- 表达式。
globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。
用来执行一个字符串表达式,并返回表达式的值。
st1 = "{'name':'alex'}"
d1 = eval(st1)
print(d1['name'])

express = '1 + 3 * (10 + 2)'
print(eval(express))

##########################################################################################
7. bin(number) 十进制转二进制
hex(number) 十进制转十六进制
oct(number) 十进制转八进制

##########################################################################################
8. globals() 用于获取当前程序的所有全局变量
locals() 用于获取当前程序的所有局部变量

##########################################################################################
9. zip([iterable, ...])
iterabl -- 一个或多个迭代器;
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。
zip 方法在 Python 2 和 Python 3 中的不同:在 Python 3.x 中为了减少内存,zip() 返回的是一个对象。如需展示列表,需手动 list() 转换。

##########################################################################################
10. max() min()
分别获取传入的序列的最大值、最小值(原理:对传入的序列进行for循环依次从第一个内容进行比较),不同类型不可比较

l = [1,2,3,8,-1]
max_l = max(l)
min_l = min(l)
print(max_l,min_l)

若传入的序列为字典形式则需要配合zip()进行处理
dic = {'a_age':18,'b_age':22,'c_age':10}
若想获取上述三人谁的年龄最大和对应的年龄(直接比较是比较key的字符串),则可以如下:

max_age = max(zip(dic.values(),dic.keys()))
print(max_age)

若要对列表中字典的指定内容进行比较,则需要指定max(sequence[,key])的排序规则
不管是排序还是选取最大值或者最小值,都应该有个规则或者顺序,而平时我们所说的最大值或最小值实际上也是在某种排序规则或顺序下的最大值和最小值。
Python内置函数max()、min()和sorted()以及列表方法sort()都有一个参数key用来指定排序规则,解决的就是这个问题。key参数应该是一个可调用对象,在Python中,
类、自定义函数、内置函数、lambda表达式、带有特殊方法__call__()的对象都属于可调用函数。

people = [
{'name':'a','age':18},
{'name':'c','age':38},
{'name':'b','age':68},
]

max_age_prople = max(people,key = lambda x:x['age'])
print(max_age_prople)

##########################################################################################
11. pow(x,y,z=None)
只有两个参数时相当于 x**y,指定z参数时相当于 x**y % z
print(pow(2,5))

##########################################################################################
12. slice(start,stop[,step=1])
用于切片操作

##########################################################################################
13. sorted(iterable,key,reverse=False)
用于排序,用法同max(),min()

people = [
{'name':'a','age':18},
{'name':'c','age':38},
{'name':'b','age':68},
]
print(sorted(people,key=lambda x:x['age'],reverse=True))

##########################################################################################
14. type(name)
用于判断输入的name是何种类型
posted @ 2018-10-03 23:15  Meanwey  阅读(453)  评论(0编辑  收藏  举报