zoukankan      html  css  js  c++  java
  • Python基础(5)——函数的执行,调用,嵌套

    如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数
    关键词:封装、独立功能、代码块、模块、调用 
    Python提供了许多内建函数,比如print()。但我们也可以自己创建函数,这被叫做用户自定义函数。
    在学习过程中老师提出一个问题input()函数是否有返回值,答案自然是肯定的,input()必然有返回值,在Python 2.7下,该函数返回一个数值,raw_input()函数返回字符串,在Python 3.x下input()函数返回字符串并且没有raw_input()函数。


    函数的学习,要注重其形参,实参的意义以及运行语句的顺序:

    print("------1------")
    def class_info():
    	"显示班级信息"
    	print("------9------")
    	print("name")
    	print("------10------")
    	print("age")
    print("------2------")
    def sum(num1,num2):
    	"用来完成两个数的求和等"
    	n = num1 + num2
    	m = num1 - num2
    	x = num1 * num2
    	print("------6------")
    	return (n,m,x)  #返回元组,可表示多个值
    print("------3------")
    m = input("请输入数字一:")
    print("------4------")
    n = input("请输入数字二:")
    print("------5------")
    x = sum(m,n)  #调用函数
    print("------7------")
    print(x)
    print("------8------")
    class_info()  #调用函数
    help(class_info)  #输出帮助信息
    help(sum)

    输出结果如下:

    ------1------
    ------2------
    ------3------
    请输入数字一:32
    ------4------
    请输入数字二:21
    ------5------
    ------6------
    ------7------
    (53, 11, 672)
    ------8------
    ------9------
    name
    ------10------
    age
    Help on function class_info in module __main__:
    
    class_info()
        显示班级信息
    
    Help on function sum in module __main__:
    
    sum(num1, num2)
        用来完成两个数的求和等
    
    
    ***Repl Closed***

    可以看出,程序运行是按照1、2、3、4、5、6、8、9、10来运行的


    函数间的相互调用:

    n = input()
    def output():
    	print("-----------------")
    def output2(n):
    	for x in range(0,n):
    		output() #以前写过的不能浪费 
    output2(n)

    假如本来只能输出一行的函数,现在要求输出多行,可以再写一个函数,调用原本的,利用循环实现。


    实现求三个数平均值,利用函数嵌套:
    可将目标进行分解,先求和,再求平均值(将复杂的问题分步解决)
    代码如下:

    def sum(x,y,z):  #求和函数
    	sum = x+y+z
    	return sum
    
    def averge(a,b,c): #求平均值函数
    	s = sum(a,b,c)
    	averge = s/3.0
    	return averge
    
    a = int(input("输入数字1:"))
    b = int(input("输入数字2:"))
    c = int(input("输入数字3:"))
    print("%s"%averge(a,b,c))
    


  • 相关阅读:
    纯数学教程 Page 325 例LXVIII (12)
    纯数学教程 Page 325 例LXVIII (11) Math.Trip.1927,1928
    纯数学教程 Page 325 例LXVIII (11) Math.Trip.1927,1928
    纯数学教程 Page 325 例LXVIII (9)
    纯数学教程 Page 325 例LXVIII (14) $\frac{1}{1^2}+\frac{1}{3^2}+\frac{1}{5^2}+\cdots=\frac{3}{4}(\frac{1}{1^2}+\frac{1}{2^2}+\frac{1}{3^2}+\cdots)$
    纯数学教程 Page 325 例LXVIII (14) $\frac{1}{1^2}+\frac{1}{3^2}+\frac{1}{5^2}+\cdots=\frac{3}{4}(\frac{1}{1^2}+\frac{1}{2^2}+\frac{1}{3^2}+\cdots)$
    纯数学教程 Page 325 例LXVIII (13)
    纯数学教程 Page 325 例LXVIII (12)
    纯数学教程 Page 325 例LXVIII (9)
    纯数学教程 Page 325 例LXVIII (13)
  • 原文地址:https://www.cnblogs.com/young-for-you/p/7286894.html
Copyright © 2011-2022 走看看