python扫盲之三-函数

我们先来看个例子:

1.def abc():

2.print 'hello word'

3.

5.'hello word'

非常简单的小例子,我们封装了一个交abc的函数,函数的功能就是打印‘hello word’,这里要注意定义函数的关键词def 冒号结尾 和shell中的方法一样,下面的print 前面要遵循python的缩进风格。

相信你一定听说过函数式编程,粗狂的理解就是你所编写的某个功能,代码大部分是通过函数封装的。函数可以互相调用来完成一系列动作。

1.def abc():

2.print 1

3.

4.def xxx():

5.print 2

6. abc()

7.

9.2

10. 1

11.

12. 函数调用函数

带参数的函数

同样的函数可以带参数,参数可以指定默认值,直接看个例子

1.def abc(x):

2.print x + x

3.

4.>>abc(1)

5.2

6.

7.def abc(a,b=2):

8.#这个函数里面b指定了一个默认值,如果调用函数时没有指定b的值 它就会默认使用函数定义时的2

9.print a + b

10.

11. >>abc(a=1)

12. 3

13. >>abc(a=1,b=1)

14. 2

同样的,函数的参数可以是各种类型,列表,字符串,浮点,都可以,各位老铁自己试验一下。

内置函数

作为友好的全能的python,当然也提供了很多内置的函数供给使用。

内置函数的使用方法请浏览官方文档https://docs.python.org/2/library/functions.html

1.咱随意列举几个例子

2.abs函数参数是数字,获取绝对值

3.abs(100)

4.100

5.abs(-100)

6.100

7.数据类型转换函数,这个比较常用

8.int('123') 字符串转数字

9.str(1.23) 转换成字符串

递归函数

这是一个比较特殊的函数,什么叫做递归函数呢?一个函数在内部逻辑里自己调用了自己,这种函数被称为递归函数

注意使用递归函数时一定要有个明确的结束条件,否则会一直递归下去直至报错。

看个例子:使用递归的方式来生成斐波那契数列

1.def recur_fibo(n):

2.if n

3.return n

4.else:

5.return(recur_fibo(n-1) + recur_fibo(n-2))

6.

7.

8.# 获取用户输入

9.nterms = int(input("您要输出几项? "))

10.

11. # 检查输入的数字是否正确

12. if nterms

13. print("输入正数")

14. else:

15. print("斐波那契数列:")

16. for i in range(nterms):

17. print(recur_fibo(i))

18.

19.

20. >>您要输出几项? 10

21. 斐波那契数列:

22. 0

23. 1

24. 1

25. 2

26. 3

27. 5

28. 8

29. 13

30. 21

31. 34

递归函数看不懂没关系,咱们以后有很多机会学习他。好啦今天就到这里,虽然不够详细,但咱做个抛砖引玉。希望各位老铁越来越好!

获取更多学习资料请私信我

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180407A0QNPI00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券