在Python中能够使用def关键字来定义函数,和变量同样每一个函数也有一个响亮的名字,并且命名规则跟变量的命名规则是一致的。在函数名后面的圆括号中能够放置传递给函数的参数,函数执行完成后咱们能够经过return关键字来返回一个值 变量引用和调用函数的引用python
#-*- coding:utf-8 -*- from random import randint def roll_dice(n=2): total = 0 for _ in range(n): total += randint(1, 6) return total def add(a=0, b=0, c=0): return a + b + c print(roll_dice()) print(roll_dice(3)) print(add()) print(add(1)) print(add(1, 2)) print(add(1, 2, 3)) # 传递参数时能够不按照设定的顺序进行传递 print(add(c=50, a=100, b=200))
调用函数以及引用dom
def foo(): print('hello, world!') def foo(): print('goodbye, world!') foo()
提示:上述foo()会引用哪一个呢?,当多个开发进行定义的时候 能够在同个文件夹下写两个不一样的.py文件(a.py 和b.py)函数
[root@aliyun-hk-yabo-test-ownself python]# python 2.py goodbye, world! hello, world! hello, world! goodbye, world! [root@aliyun-hk-yabo-test-ownself python]# cat 2.py from b import foo from a import foo import a as m1 import b as m2 m1.foo() m2.foo() [root@aliyun-hk-yabo-test-ownself python]# cat a.py def foo(): print('hello, world!') foo() [root@aliyun-hk-yabo-test-ownself python]# cat b.py def foo(): print('goodbye, world!') foo()
提示:若是咱们导入的模块除了定义函数以外还中有能够执行代码,这个坑最好把要执行的代码放到执行的模块里 if name == 'main': print('call foo()') foo() print('call bar()') bar()spa
def main(): # Todo: Add your code here pass if __name__ == '__main__': main()