x006-函數和模塊的使用

函數和模塊的使用

在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

__name__是Python中一個隱含的變量它表明了模塊的名字

只有被Python解釋器直接執行的模塊的名字纔是__main__

規範

def main():
    # Todo: Add your code here
    pass


if __name__ == '__main__':
    main()
相關文章
相關標籤/搜索