zoukankan      html  css  js  c++  java
  • Python学习笔记函数之返回值和return语句

    随笔记录方便自己和同路人查阅。

    #------------------------------------------------我是可耻的分割线-------------------------------------------

      如果调用len()函数,并向它传入向'Hello'这样的参数,函数调用就求值为整数5。这是传入的字符串的长度。一般来说,函数调用

    求值的结果,称为函数的“返回值”。

      用def语句创建函数时,可以用return语句指定应该返回什么值。return语句包含以下部分:

      (1)return关键字

      (2)函数应该的值或表达式

      如果在return语句中使用了表达式,返回值就是该表达式求值的结果。

    #------------------------------------------------我是可耻的分割线-------------------------------------------

      例如,下面的程序定义了一个函数,它根据传入的数字参数,返回一个不同的字符串。在文件编辑器中输入一下代码,

    并保存为magic8Ball.py:

     1 #
     2 # -*- coding:utf-8 -*-
     3 # Autor: Li Rong Yang
     4 import random
     5 
     6 def getAnswer(answerNumber):
     7     if answerNumber == 1:
     8         return 'It is certain'
     9     elif answerNumber == 2:
    10         return 'It is decidedly so'
    11     elif answerNumber == 3:
    12         return 'Yes'
    13     elif answerNumber == 4:
    14         return 'Reply hazy try again'
    15     elif answerNumber == 5:
    16         return 'Ask again later'
    17     elif answerNumber == 6:
    18         return 'Concentrate and ask again'
    19     elif answerNumber == 7:
    20         return 'My reply is no'
    21     elif answerNumber == 8:
    22         return 'Outlook not so good'
    23     elif answerNumber == 9:
    24         return 'Very doubtful'
    25 
    26 r = random.randint(1,9)
    27 fortune = getAnswer(r)
    28 print(fortune)
    29     
    View Code

      运行结果:

       在这个程序开始时,Python首先导入random模块。然后getAnswer()函数被定义。因为函数是被定义(而不是被调用),所以执行会跳过其中的代码。接下来,

    random.randint()函数被调用,带两个参数1和9。它求值为1和9之间的一个随机整数(包括1和9),这个值被存在一个名为r的变量中。

      getAnswer()函数被调用,以r作为参数。程序执行转移到getAnswer()函数的顶部,r的值被保存到名为answerNumber的变元中。然后,根据answerNumber中

    的值,函数返回许多可能字符串中的一个。程序执行返回到程序底部的代码行,即原来调用getAnswer()的地方。返回的字符串被赋给一个名为fortune变量,然后它

    又被传递给print()调用,并被打印在屏幕上。

      请注意,因为可以将返回值作为参数传递给另一个函数调用,所以你可以将下面3行代码

    r = random.randint(1,9)
    fortune = getAnswer(r)
    print(fortune)

      缩写成一行等价的代码:

    print(getAnswer(random.randint(1,9)))

      记住,表达式是值和操作符的组合。函数调用可以用在表达式中,因为它求值为它的返回值。

  • 相关阅读:
    flask框架(一):初入
    .py文件打包成.exe文件
    gtk+-3.21.4 static build step in windows XP
    cairo-1.14.6 static compiler msys mingw32
    ffmpeg-20160811-bin.7z
    gtk+2.24.0-glib-2.28.1-staticLib-mingw32-x86-2016-08-10.7z
    ffmpeg-20160806-bin.7z
    glib-2.49.4-msys-x86-staticLib.7z
    Tesseract-OCR text2image.exe [ x86 支持 XP ]
    ffmpeg-20160803-bin.7z
  • 原文地址:https://www.cnblogs.com/lirongyang/p/9526743.html
Copyright © 2011-2022 走看看