标签:
python中内置了一些函数和类总是可调用的,按字母排列如下 :
分类 如下 :
abs() 绝对值
max() 获取一组数据的最大值
min() 获取一组数据的最小值
len() 获取一个序列,或字符串的长度
divmod(x,y) 获取商和余数
pow(x,y[,z]) 取幂
round(number[,ndigits]) 四舍五入函数,ndigits为可选参数,保留位数
sum() 求和
举例:
#取绝对值 >>> abs(-123) 12
#取最小值 min(22,12,888) 12
#取最大值 max(22,12,888) 888
#取长度 len("string") 6 len([1,2,3,4,5,6]) 6
#获取商和余 >>> divmod(10,3) (3, 1)
#取值的几次方 >>> pow(2,3) 8
#四舍五入 >>> round(1.5,0) 2.0
#求和 >>> li = [1,2,3,4] >>> sum(li) 10
2.类型转化函数
type() 查看数据类型
int() 转换为整数类型
str() 转换为字符串
list() 转换为列表
tuple() 转换为元组
hex() 将一个整数转换为一个十六进制字符串
oct() 将一个整数转换为一个八进制字符串
bin() 将一个整数转换为一个二进制的字符串
chr() 将一个整数转换为一个字符
ord() 将一个字符转换为它的整数值
#type() 查看数据类型
>>> sum(li) 10 >>> type(li) <class ‘list‘>
#int() int转换为整数类型 >>> a = ‘123‘ >>> type(a) <class ‘str‘> >>> b = int(a) >>> type(b) <class ‘int‘>
#str() 将整数转为字符串 >>> a = ‘123‘ >>> type(a) <class ‘str‘> >>> b = int(a) >>> type(b) <class ‘int‘> >>> c = str(b) >>> type(c) <class ‘str‘>
#list() 将字符串转为列表 >>> s = str("123") >>> type(s) <class ‘str‘> >>> l = list(s) >>> print(l) [‘1‘, ‘2‘, ‘3‘] >>> type(l) <class ‘list‘>
#tuple()将数据类型转为元组 >>> li = [‘a‘,‘b‘,‘c‘] >>> tu = tuple(li) >>> type(tu) <class ‘tuple‘> >>> print(tu) (‘a‘, ‘b‘, ‘c‘)
#hex() 将整数转换为16进制的字符串类型 >>> num = 14 >>> he = hex(num) >>> print(he) 0xe >>> type(he) <class ‘str‘>
#oct() 将一个整数转换为一个八进制字符串 >>> num = 14 >>> oc = oct(num) >>> print(oc) 0o16 >>> type(oc) <class ‘str‘>
#bin() 将一个整数转换为一个二进制的字符串 >>> num = 5 >>> b = bin(num) >>> print(b) 0b101 >>> type(b) <class ‘str‘>
#chr() 将一个整数转换为一个字符 >>> st = chr(65) >>> print(st) A
#ord() 将一个字符转换为它的整数值 >>> num = ord(‘A‘) >>> print(num) 65
#!/usr/bin/env python # -*- coding:utf-8 -*- #随机验证码生成 import random temp = "" for i in range(6): num = random.randrange(0,4) if num ==3 or num == 1: rad2 = random.randrange(0,10) temp = temp + str(rad2) else: rad1 = random.randrange(65,91) c1 = chr(rad1) temp = temp + c1 print(temp)
3.序列处理函数
filter() 根据function参数返回的结果是否为真来过滤list参数中的项,最后返回一个新列表
zip() 接受一系列可迭代对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)
map()
将function应用于iterable的每一个元素,返回结果的列表。如果有额外的iterable参数,并行的从这些参数中取元素,并调用function。如果一个参数比另外的要短,将以None扩展该参数元素。如果function是None使用特性函数;如果有多个参数,map()返回一元组列表,元组包含从各个参数中取得的对应的元素(某种变换操作)。iterable参数可以是序列或者任意可迭代对象;结果总是列表。
reversed() 用于反向列表中元素
enumerate() 为可迭代的对象添加序号
#filter 过滤满足条件的元素 >>> a = [ 1,2,3,4] >>> b = filter(lambda x: x > 2, a) >>> for i in b: ... print(i) ... 3 4
#zip name = [‘a‘,‘b‘] age = [11,22] result = zip(name,age) for i in result: print(i)
#执行结果
(‘a‘, 11)
(‘b‘, 22)
#map >>> def test(x): ... return x - 50 ... >>> num = [150, 200, 25] >>> map(test,num) <map object at 0x0000000000D5AEB8> >>> for i in map(test,num): ... print(i) ... 100 150 -25
#reversed >>> a = [1,2,3] >>> ret = reversed(a) >>> for i in ret: ... print(i) ... 3 2 1
#enumerate a = [‘a‘,‘b‘,‘c‘] dic = {} for k,i in enumerate(a,10): print(k,i) dic[k] = i print(dic)
4.逻辑判断类
all(iterable) 集合中的元素都为真时返回True,空字符串也为true
any(iterable) 集合中只要有任意一元素为真都会返回True
#all() 循环参数 ,如果每个元素都为真那么all的返回值都为真 def all(iterable): for i in iterable: if not i: return False return True li = [0,1,2,0] result = all(li) print(result)
#只要有一个值为真则为真 li = [1,2,0] print(any(li))
5.其它 函数
id() 返回对象的唯一标识
globals() 全局变量
locals() 返回当前的变量列表
callable() 检查是对象是否可被调用
dir() 返回当前范围内的变量、方法和定义的类型列表
eval() 用法类似exec(),不同的是execfile的参数filename为文件名,而exec的参数为字符串
input() 获取用户输入
isinstance() 判断object是否是class的实例
vars() 打印对象属性
#ID查看内存地址 >>> a = "test" >>> id(a) 14265624
#查看全局变量 >>> a = "test" >>> print(globals()) {‘a‘: ‘test‘, ‘__doc__‘: None, ‘__spec__‘: None, ‘__loader__‘: <class ‘_frozen_i mportlib.BuiltinImporter‘>, ‘__name__‘: ‘__main__‘, ‘__package__‘: None, ‘__buil tins__‘: <module ‘builtins‘ (built-in)>}
#locals() >>> def test(): ... a = "hehe" ... print(locals()) ... >>> test() {‘a‘: ‘hehe‘}
#查看对象是否可调用 >>> a = "123" >>> callable(a) False >>> callable(len) True
#dir() 返回当前范围内的变量、方法和定义的类型列表 >>> dir(list) [‘__add__‘, ‘__class__‘, ‘__contains__‘, ‘__delattr__‘, ‘__delitem__‘, ‘__dir__‘ , ‘__doc__‘, ‘__eq__‘, ‘__format__‘, ‘__ge__‘, ‘__getattribute__‘, ‘__getitem__‘ , ‘__gt__‘, ‘__hash__‘, ‘__iadd__‘, ‘__imul__‘, ‘__init__‘, ‘__iter__‘, ‘__le__‘ , ‘__len__‘, ‘__lt__‘, ‘__mul__‘, ‘__ne__‘, ‘__new__‘, ‘__reduce__‘, ‘__reduce_e x__‘, ‘__repr__‘, ‘__reversed__‘, ‘__rmul__‘, ‘__setattr__‘, ‘__setitem__‘, ‘__s izeof__‘, ‘__str__‘, ‘__subclasshook__‘, ‘append‘, ‘clear‘, ‘copy‘, ‘count‘, ‘ex tend‘, ‘index‘, ‘insert‘, ‘pop‘, ‘remove‘, ‘reverse‘, ‘sort‘]
#eval >>> a = 1 >>> eval("a+1") 2
#input >>> print(input("内容:")) 内容:a a
#!/usr/bin/env python # -*- coding:utf-8 -*- #isinstance() #写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5 def length(p): if isinstance(p,str) or isinstance(p,list) or isinstance(p,tuple): if len(p) >5: return "长度大于5" else: return False return None temp = [1,2,3] ret = length(temp) print(ret)
对于简单的函数,也存在一种简便的表示方式
# ###################### 普通函数 ###################### # 定义函数(普通方式) def func(arg): return arg + 1 # 执行函数 result = func(123) # ###################### lambda ###################### # 定义函数(lambda表达式) my_lambda = lambda arg : arg + 1 # 执行函数 result = my_lambda(123)
举例:
ret = filter(lambda x : x > 22, [11,22,33,44]) for i in ret: print(i)
标签:
原文地址:http://www.cnblogs.com/jl-bai/p/5477309.html