zoukankan      html  css  js  c++  java
  • 六、函数篇

    内置函数:
    help()
    dir()
    type()
    id()
    is 比较内存地址(==比较的是值)
    var() 当前模块的所有变量(系统的和自己定义的)
    系统的:
    'file':程序的路径
    '__doc__':注释的内容
    '__name__':'__main__' 这个很重要,代表程序的主入口
    '__package__':None
    reaload(temp):比如说你import了一个模块,然后你又改动了这个模块的内容,这个时候你就需要重新导入,默认你import了某个模块,你再次又import了这个模块,它不会真的重新导入,它还是原来的内容,这个时候就需要用到reaload了。
    --------------------------------------------------------------------------------------
    cmp(2,3)
    abs()
    bool()
    divmod(10,3) 取得商和余数组成的元组
    max()
    min()
    sum()
    pow(2,11) 幂,2的11次方
    ---------------------------------------------------------------------------------------
    len()
    all() 接收一个序列,然后进行判断,如果所有的值都是真的,则返回真,只要有空值,就会返回假
    如下:
    >>> a = [1,2,3,4,5]
    >>> b = [1,2,3,"",5]
    >>> all(a)
    True
    >>> all(b)
    False
    >>>
    这个在判断用户输入是否为空的时候特别好用。
    any() 和all()相似,any()是只要有一个是真就是真,否则就是假
    ----------------------------------------------------------------------------------------
    chr(65)----->A 接收一个数字返回一个asci码
    ord('A')----->65 接收一个asci码返回一个数字
    hex(12)------>0xc 十进制的12转换成16进制
    oct(12)------>0o14 十进制的12转换成8进制
    bin(12)---->0b1100 十进制的12转换成2进制
    -----------------------------------------------------------------------------------------
    range()
    xrange()
     
    >>> li = [11,22,33,44,55]
    >>> for k,v in enumerate(li):print (k,v)
     
    0 11
    1 22
    2 33
    3 44
    4 55
    枚举:默认情况下enumerate会将找出它的下标和对应的值
    你也可以设置从1开始
    >>> li = [11,22,33,44,55]
    >>> for k,v in enumerate(li,1):print (k,v)
     
    1 11
    2 22
    3 33
    4 44
    5 55
    设置从1开始的意义在于假如是一个购物车,你不可能让用户选择从0开始,肯定是从1开始,然后具体取值的时候就是用户选择的-1就是它的索引了。
    map
    filter
    reduce
    =======================================================================================================================================
    自定义函数
    定义
    def 函数名(参数):
     
    ...
    函数体
    ...
     
    调用
    函数名()
    ------------------------------------------
    普通参数:
    # ######### 定义函数 #########
     
    # name 叫做函数func的形式参数,简称:形参
    def func(name):
    print name
     
    # ######### 执行函数 #########
    # 'wupeiqi' 叫做函数func的实际参数,简称:实参
    func('wupeiqi')
     
     
    返回值:
    如果函数你默认没有写返回值,默认返回None
    ------------------------------------------
    默认参数:
    def func(name, age = 18):
     
    print "%s:%s" %(name,age)
     
    # 指定参数
    func('wupeiqi', 19)
    # 使用默认参数
    func('alex')
     
    注:默认参数需要放在参数列表最后,也可以有多个
    -------------------------------------------------------------------------
    动态参数:可以一次性传入多个不确定的参数
    动态参数1:------->加1颗*是为了传列表和元组
    def func(*args):
      print args
     
    # 执行方式一
    >>>func(11,33,4,4454,5)
    (11, 33, 4, 4454, 5)
     
    # 执行方式二
    >>> li = [11,22,33,44,55]
    >>> func(*li)
    (11, 22, 33, 44, 55)
     
    动态参数2:-------->加2颗*是为了传字典
    def func(**kwargs):
      print kwargs
     
    # 执行方式一
    >>> func(name='alex',age=18)
    {'name': 'alex', 'age': 18}
     
    # 执行方式二
    >>> dic = {'name':'alex','age':18}
    >>> func(**dic)
    {'name': 'alex', 'age': 18}
     
    动态参数3:-------->无敌模式
    def func(*args, **kwargs):
     
    print args
    print kwargs
     
     
    执行方式:
    >>> func(1,2,3,4,k1='rooney',k2='ramos')
    (1, 2, 3, 4)
    {'k1': 'rooney', 'k2': 'ramos'}
     
    注:str.format就是对这个的典型应用
    -----------------------------------------------------------------------------
  • 相关阅读:
    rails consol reload!
    手shi目录
    rails 3 search plugin
    nginx+wordpress配置教程
    管局介绍
    jquery 全选 反选
    rails跳过验证
    关于partial的使用
    你需要一个轻量级的文本编辑器吗?notepad++很适合我!你也用用看?
    ssh技巧
  • 原文地址:https://www.cnblogs.com/steven9898/p/11329346.html
Copyright © 2011-2022 走看看