09.完美主义者的函数

说到函数你会联想到什么?

一大堆未知数的方程 通过复杂的各种算法 得到一个结果

没错这是函数 但是有一点要清楚 我们是编程的人 我们可以开启上帝视角

除非你在开拓一片现如今从未到过的领域,否则不需要你忙着计算 和拥有强大的数学能力

当然你有这方面的能力 再好不过了。不足的话也没有什么关系,计算机可以帮我们 解决这些问题。

 

不仅仅在Python中 其他的语言也是一样,函数最主要的功能是提高代码的利用率 让程序更加精简 美观。

基本写法:

# def 后面接函数名称(自己定义名字) 最后调用这个函数
def
my_fist_function(): print('helloword') my_fist_function()

那 那 那 有人会说 打印一个helloword 写了三行 我直接打印不好吗? 

那么问题来了,我要打印100次helloword呢? 1000次 10000次呢?

是不是 额...print('helloword')写100行呢?

我替聪明的同学发声 我可以这样啊:

for i in range(0,100):
    print('helloword')

两行我就可以打印n遍helloword 我压根都不用函数。

的确对于这种单一的需求用不到函数 可以更简洁

那么接下来有个新的问题:

我的需求提升至10个 我的程序中有十个地方要求打印10行'a',那你是不是得写10个for循环?

 

函数中的 return

def my_fist_function():
    c = 'helloword'
    return c
a = my_fist_function()
print(a)

return 表示这个函数的返回值

他返回之后,a = my_first_function()  a就来接收这个返回值

还有一点很重要:执行一个函数,只要执行到return语句时,程序立马结束,并返回这个值。

如:

def my_fist_function():
    c = 'helloword'
    for i in range(1,100):
        print('i出现的次数{}'.format(i))
        if c == 'other':
            pass
        else:
            return 'error'
a = my_fist_function()
print(a)

pass代表这一行不管不顾 直接跳过

程序执行结果为:

 显而易见for循环只执行了一次 碰到return之后 函数立即返回 'error' 不再继续执行了

 

函数的基础部分暂时只说这么多 后续还有函数作用域 闭包 函数内的参数传递 函数的设计...

结束。

 

 

posted @ 2021-12-17 18:45  锋芒毕露的蜘蛛  阅读(23)  评论(0编辑  收藏  举报