python基础教程-函数导读

随着课程的深入,你距离入门python也越来越近,但同时,学习的难度也在逐渐增加。因此,在正式学习函数之前,我认为有必要对前面5个章节做一个总结性复习。
程序=数据+算法

前面所学知识,都浓缩在这一张图上,看起来纷杂的知识点整理起来也不过如此。如果需要订立一个标准来衡量对这些知识的掌握是否合格,我认为有两个标准非常合适:

  1. 清楚的知道8种数据类型,并能够在程序里辨识他们
  2. 前面5章里所有的代码示例以及练习题,你都能够理解程序的执行流程,并画出程序流程图

当然,这样的要求是很高的,如果你感到畏难情绪,也是正常的。但请相信,永远做自己能力范围之内的事情是不会让人进步的。

前面的内容,紧紧围绕着两个主题,一个是数据,一个是程序控制。关于数据,我们已经知道python可以处理什么样的数据,又学习了7种运算符来操作这些数据。接着,我们学习条件控制和循环控制,前者解决的是在不同情况下选择不同的处理数据方法,后者解决的是速度问题,只有循环才能让我们利用计算机去完成海量的工作,这个过程中,你学习了迭代遍历思维。

那么掌握了这些内容,就可以写程序来帮助我们完成一些事情了么?还远远不够,或者说对于稍微复杂点的事情还远远不够。就以目前所掌握的知识去写代码,很快你就会遇到一个非常棘手的问题,你的代码只能用一次。

lst1 = [1, 4, 2, 5]
lst2 = ['a', 'c', 'd', 'e']

现在,请你遍历输出这两个列, 遍历输出列表里的内容本身很容易,但尴尬的是,写出来的代码非常臃肿

lst1 = [1, 4, 2, 5]
lst2 = ['a', 'c', 'd', 'e']

for item in lst1:
    print(item)

for item in lst2:
    print(item)

为了输出这两个列表里的内容,我使用了两次for循环,如果有3个列表呢,难道用3个for循环?如果有300个列表呢,难道用300个for循环?如果程序员每天都这样去工作,估计早就都累瘫了!

所以,一定有什么办法,可以解决这种重复性的操作,这个办法就是函数。

lst1 = [1, 4, 2, 5]
lst2 = ['a', 'c', 'd', 'e']


def iter_print_lst(lst):
    for item in lst:
        print(item)


iter_print_lst(lst1)
iter_print_lst(lst2)

在上面的代码里,我定义了一个函数,一个函数,可以完成特定的功能,函数iter_print_lst的功能是遍历输出列表里的值。有了这个函数,就可以用它来遍历输出lst1和lst2,在这段代码里,我只写了一个for循环,却可以遍历输出2个列表里的数据,实际上,有多少个列表都无所谓,永远只有一个for循环,但这个for循环可以被多次使用。

借着这个例子,引出了函数存在的意义,而函数存在的意义还远不止于此,随着学习的深入,你会了解和学习更多的实用的思维方式,这些方式一直都存在于人类的智慧之中,为了让你更好的学习一门编程语言,我会以更通俗的方式把他们具化。

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案