函数

函数编写指南:

  1.需要给函数指定描述性名称,且只在其中使用小写字母和下划线

  2.每个函数都应该包含简要阐述其功能的注释,还注释应该紧跟在函数定义的后面,并采用文档字符格式串

  3.给形参制定默认值,等号的两边不要有空格

  4.建议代码行的长度不要超过79个字符,若超过可分写在下一行,按两次tab建与下面的函数体区分

  5.若程序或者模块包含多个函数,可使用两个空行将相邻的两个函数分开(以便后续的阅读)

  6.所有的import语句都应该放在文件的开头

1. 函数的创建:

.>>>def hello(name) # 参数在创建的时候可有可无

    reture "Hello," + name + "!"

2.函数的参数:

  1.位置参数:一定要注意顺序不能乱掉

  2.关键字参数:关键字参数一般会放在位置参数之后  

  3,收集参数:用户可以给函数提供任意多的参数,且可以和普通参数搭配使用,但是不能处理关键字参数。

  >>>def aa(*haha):     #定义一个名叫aa的函数,*的意思为:收集其余位置的参数
    print(haha)
  >>>aa(1)
  (1,)                            # 可以看出返回的是一个元组
  >>>aa(1,2,3)
  (1, 2, 3)

==========================================

  >>>def aa(tip,*haha):      #  和普通参数搭配使用
      print(tip)
      print(haha)
  >>>aa('SB',1111,2222,3333,'eeeee')
  SB
  (1111, 2222, 3333, 'eeeee')  

  4.收集参数2:能够处理关键字参数

  >>>def aa(**haha):
    print(haha)
  >>>aa(x=1)
  {'x': 1}                                       #返回的是一个字典
  >>>aa(x=1,y=2,z=3)
  {'x': 1, 'y': 2, 'z': 3}

===============================

  >>>def aa(x,y,*haha,**hahaha):     #  和普通参数搭配使用       # python 先匹配位置参数和关键字实参,再将剩余的实参收集到最后一个形参中 
        print(x,y)
    print(haha)
    print(hahaha)

  >>>aa(1,2,3,4,5,6,7,8,9,a=11,b=22)
  1 2
  (3, 4, 5, 6, 7, 8, 9)
  {'a': 11, 'b': 22}

3. 函数的递归:引用(调用)本身,达到某个条件以后才会停止,否则无线的循环下去知道死机

举例:阶乘n * (n-1) *(n-2).......1

>>>def a(n):
  if n==1:
    return 1
  else:
  return n * a(n-1)
>>>a(10)
3628800

 

posted @ 2017-07-05 00:51  后盾  阅读(173)  评论(0编辑  收藏  举报