zoukankan      html  css  js  c++  java
  • 简明python教程三-----函数

    函数通过def关键字定义。def关键字后跟一个函数的表标识符名称,然后跟一对圆括号。

    圆括号之中可以包括一些变量名,该行以冒号结尾。接下来是一块语句,它们是函数体。

    def sayHello():
        print 'Hello World!'
    
    sayHello()

    函数形参是在函数定义的圆括号对内指定,用逗号分隔。

    def printMax(a,b):
        if a>b:
            print a,'is maximum'
        else:
            print b,'is maximum'
    
    printMax(3,4)
    
    x = 5
    y = 7
    
    printMax(x,y)

    使用局部变量

    def func(x):
        print 'x is',x
        x=2
        print 'Changed local x to',x
    
    x=50
    func(x)
    print 'x is still',x

    使用global语句

    定义全局变量,使用global语句完成这一功能。

    使用global语句可以清楚地表明变量是在外面的块定义的。

    def func():
        global x
    
        print 'x is',x
        x = 2
        print 'Changed local x to',x
    
    x = 50
    func();
    print 'Value of x is',x

    结果:

    x is 50
    Changed local x to 2
    Value of x is 2

    默认参数值

    在函数定义的形参名后加上赋值运算符(=)和默认值,从而给形参指定默认参数值。

    def say(message,times=1):
        print message*times
    
    say('Hello')
    say('World',5)

    重要

    只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。(因为赋给形参的值时根据位置而赋值的)

    例如,def func(a,b=5)是有效的,但是def func(a=5,b)是无效的

    关键参数

    函数有多个参数,而你只想指定其中的一部分,则可以通过命名来为这些参数赋值----关键参数

    优势:1.不必担心参数的顺序,使用函数变得更加简单。

      2.假设其他参数都有默认值,可以只给我们想要的参数赋值。

    def func(a,b=5,c=10):
        print 'a is',a,'and b is',b,'and c is',c
    func(3,7)
    func(25,c=24)
    func(c=50,a=100)

    return

    注意:没有返回值的return语句等价于return None。

    None是Python中表示没有任何东西的特殊类型。例如,如果一个变量的值是None,可以表示它没有值。

    除非提供自己的return语句,每个函数都在结尾暗含有return None语句。

    DocStrings

    文档字符串,它通常被简称为docstrings。

    DocStrings是一个重要的工具,能帮助你的程序文档更加简单易懂,应尽量使用它,甚至可以在程序运行的时候,从函数恢复文档字符串。

    #!/usr/bin/python
    # Filename: func_doc.py
    
    def printMax(x, y):
        '''Prints the maximum of two numbers.
    
        The two values must be integers.'''
        x = int(x) # convert to integers, if possible
        y = int(y)
    
        if x > y:
            print x, 'is maximum'
        else:
            print y, 'is maximum'
    
    printMax(3, 5)
    print printMax.__doc__

    注意:DocStrings也适用于模块类。

    文档字符串的惯例是一个多行字符串,首行以大写字母开始,句号结束。第二行是空行,从第三行开始是详细的描述。

    使用——doc——(注意是双下划线)调用printMax函数的文档字符串属性(属于函数的名称)。

  • 相关阅读:
    tee:结果输出到文件同时也作为往后的输入信息
    hexdump:查看文件头部信息,以十六制形式查看文件
    删除大文件方法
    rename:批量更改文件名
    求从1加到100的结果
    简书里面的面试题
    开源好网站
    ubuntu 14上安装mysql离线包
    单点登录原理与简单实现---转
    Revit API 判断一个构件在某个视图中的可见性
  • 原文地址:https://www.cnblogs.com/Caden-liu8888/p/6375432.html
Copyright © 2011-2022 走看看