python 函数

作者: hiekay | 来源:发表于2018-10-12 18:48 被阅读7次

    给变量赋值

    shell,实验操作如下:

    >>> a = 2   #注1
    >>> a       #注2
    2
    >>> b = 3   #注3
    >>> c = 3
    >>> b
    3
    >>> c
    3
    

    说明:
    注1:a=2的含义是将一个变量a指向了2这个数,就好比叫做a是的钓鱼的人,通过鱼线,跟一条叫做2的鱼连接者,a通过鱼线就可以导到2
    注2:相当于要a这个钓鱼的人,顺着鱼线导出那条鱼,看看连接的是哪一条,发现是叫做2的那条傻鱼
    注3:b=3,理解同上。那么c=3呢?就是这条叫做3的鱼被两个人同时钓到了。

    建立简单函数

    >>> a = 2
    >>> y=3*a+2
    >>> y
    8
    

    特别注意,如果没有先a=2,就直接下函数表达式了,像这样,就会报错。

    >>> y=3*a+2
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      NameError: name 'a' is not defined
    

    注意看错误提示,a是一个变量,提示中告诉我们这个变量没有定义。显然,如果函数中要使用某个变量,不得不提前定义出来。定义方法就是给这个变量赋值。

    建立实用的函数

    打开 pycharm , new file : add.py , 输入如下代码:

    #coding:utf-8
    
    def add_function(a,b):
        c = a+b
        print c
    
    if __name__=="__main__":
        add_function(2,3)
    

    运行: 


    image.png
    • 注意,包括冒号和空格,都得一样。冒号和空格很重要。
    • 1 #coding:utf-8声明本 文件中代码的字符集类型是utf-8格式。
    • 2 def add_function(a,b): 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数;add_function是这个函数名称,取名字是有讲究的,就好比你的名字一样。在python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢?(a,b)这个括号里面的是这个函数的参数,也就是函数变量。冒号,这个冒号非常非常重要,如果少了,就报错了。冒号的意思就是下面好开始真正的函数内容了。
    • 3 c=a+b 特别注意,这一行比上一行要缩进个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。然后这句话就是将两个参数(变量)相加,结果赋值与另外一个变量c。
    • 4 print c 还是提醒看官注意,缩进四个空格。将得到的结果c的值打印出来。
    • 5 if name=="main": 这句话先照抄,不解释。注意就是不缩进了。
    • 6 add_function(2,3) 这才是真正调用前面建立的函数,并且传入两个参数:a=2,b=3。仔细观察传入参数的方法,就是把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符).

    声明函数的格式为:

    def 函数名(参数1,参数2,...,参数n):
    
        函数体
    

    python对命名要求

    • 文件名:全小写,可使用下划线
    • 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。注意:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。
    • 函数的参数:如果一个函数的参数名称和保留的关键字(所谓保留关键字,就是python语言已经占用的名称,通常被用来做为已经有的函数等的命名了,你如果还用,就不行了。)冲突,通常使用一个后缀下划线好于使用缩写或奇怪的拼写。
    • 变量:变量名全部小写,由下划线连接各个单词。如color = WHITE,this_is_a_variable = 1。

    相关文章

      网友评论

        本文标题:python 函数

        本文链接:https://www.haomeiwen.com/subject/xjvgaftx.html