码迷,mamicode.com
首页 > 编程语言 > 详细

python之内置函数

时间:2016-05-10 20:48:15      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:

一.内置函数列表

python中内置了一些函数和类总是可调用的,按字母排列如下 :

技术分享

分类 如下 :

  1. 数值函数

    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扩展该参数元素。如果functionNone使用特性函数;如果有多个参数,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)

二.lambda表达式

对于简单的函数,也存在一种简便的表示方式

# ###################### 普通函数 ######################
# 定义函数(普通方式)
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)

 

 

python之内置函数

标签:

原文地址:http://www.cnblogs.com/jl-bai/p/5477309.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!