37 py为什么要使用函数函数中添加文本注释 没有返回值的函数

第一课:为什么要使用函数
首先 要知道 本课程的主要讲解的内容为:
1、为什么要创建函数
2、***函数的概念是:将一段可能别重用的代码封账到一个代码段里面,然后通过函数的参数 ,控制函数的动态部分。// 如何来定义python中的函数和使用函数 ***
3、如何创建一个函数
4、如何为函数添加文档注释,如何获取函数的文档注释
5、函数如何返回一个值
6、改变函数的参数值
7、关键字参数与参数默认值
8、可变参数
9、如何将序列中的元素单独作为参数值传递给函数
10、函数中的作用域
11、递归函数

#  函数
#  第一讲为什么要创建函数
'''
 函数的概念
 如何创建一个函数
 为函数添加文档注释,以及如何获取文档注释
 函数如何返回一个值
 改变函数的参数值
 关键字参数与参数默认值
 可变参数
 如何将序列中的元素单独作为参数值传递给函数
 函数中的作用域
 递归函数
'''

# 斐波那契数列  的规则:表示 前2个数加起来之后 等于 接下来一个数 
fibs =[0, 1]
for i in range(10):
    fibs.append(fibs[-2] + fibs[-1])
print(fibs)                           # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
# 这样的代码不够灵活,都需要改变原程序的逻辑代码,

# 直接在控制台输入值 ,然后传到 执行代码中 
fibs = [0, 1]
n = int(input('请输入一个整数:'))    # 这个n的值的来源已经固定了,只能从控制台输入,比如我要从数据库 文本中输入怎么办呢?这样的话,我们就需要改变数据来源的方式,还需要改变代码 这样的话,我们就需要用到函数,什么叫函数:就是把我们需要大量重用的代码封装起来,然后再通过函数的参数来控制函数中动态调整的部分。
for i in range(n):
    fibs.append(fibs[-2] + fibs[-1])
print(fibs)

输出结果为
请输入一个整数:4
[0, 1, 1, 2, 3, 5]
请输入一个整数:10
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

--------------------------------------------------------------------------
第二课:创建和使用python函数
在python中所有的代码块结尾的都要有:   函数也是代码块(if while for  def(函数))

# 函数
# 创建和使用函数

# if while for
'''
函数的模板为:

def funName(param1, param2,...,paramn):
    statement1
    statement2
statement3
'''
上一讲的 斐波那契数列 用函数实现

def fibs(n):          # 函数名为 fibs(n) 
    result = [0, 1]
    for i in range(n):
        result.append(result[-2] + result[-1])
    return result     # 返回值
#print(fibs(10))  # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89] 
while True:
    n = input('请输入一个整数:')
    if n == ':exit':
        break;
    n = int(n)
    print(fibs(n))  # 这里是直接调用了函数了  n和他的获取方式没有任何的关系 

输出结果为:
请输入一个整数:10
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
请输入一个整数:3
[0, 1, 1, 2, 3]
请输入一个整数::exit

一个简单 pythhon的函数的例子:
python中函数的使用的例子
[root@bi-mysql-test scripts_test]# cat python_def02.py  
# coding:utf-8
# 定义函数
def hello():
    print("hello world!")

hello()
[root@bi-mysql-test scripts_test]# /usr/local/python3.7.3/bin/python3 python_def02.py 
hello world!

---------------------------------------------------------------------------------------------
第三课:为函数添加文档注释(重要)
# 函数
# 为函数添加文档注释
'''
多行注释
# 已# 开头的为单行注释 
'''

"""
多行注释
"""

def add(x,y):
    '计算两个数的和'   # 这个就是文档注释 
    return x + y
print(add(1,2))

print(add.__doc__)   # 输出的结果为: 计算两个数的和    这个是意思通过程序 输出文档注释 

help(add) 

输出的结果为:
3
计算两个数的和

Help on function add in module __main__:

add(x, y)
    计算两个数的和

// 这个文档注释非常的有用,我们在 编写一个library的库 每个函数,每个方法如何来用的话,就可以通过doc或者help的方式 和这个函数相关的注释文档输出 就可以生成整个成熟的帮助文档 
例子:
def hello():
    '这个是hello world'
    print("hello world!")

hello()                 # hello world! 

print(hello.__doc__)   # 这个是hello world
输出的结果为:
hello world!
这个是hello world
-------------------------------------------------------------------------------------
第四课:没有返回值的函数
// 不是 所有的 函数都是要有返回值的,在有些语言里 将没有返回值的函数叫做过程 
# 没有返回值的函数
#  Pascal 过程
#  没有返回值
# 1. 没有return语句
# 2. return语句后面没有跟任何值
# 3. 没有返回值的函数返回的是None
# 小结: 我们通过函数的返回值为None  并不能判断函数有没有return
def fun1(flag):
    if flag:
        print("满足条件")
    else:
        print("不满足条件")
fun1(True)                  # 满足条件

def fun2(flag):
    if flag:
        return             # 没有返回值 退出当前的代码块,这个此时的含义和break是一样的 
    print("满足条件")
fun2(True)                  # 满足条件
fun2(False)                 # 不满足条件
print(fun1(False))          # None

def fun3(flag):
    if flag:
        return 20      
    else:
        return None

print(fun3(True))     # 结果为: 20      如果为真返回20 
print(fun3(False))    # 结果为: None    如果为假就返回None 

猜你喜欢

转载自blog.51cto.com/12445535/2464977
今日推荐