標籤:mod 賦值 fill net 技術分享 縮排 並且 遍曆 目錄
github部落格傳送門
csdn部落格傳送門
Python 函數
函數能提高應用的模組性,和代碼的重複利用率。我們之前已經使用過一些Python提供的內建函數,比如print()。當然我們也可以自己建立函數,叫做自訂函數。
Python 函數定義規則
函數代碼塊以 def 關鍵詞開頭,後接函數標識符名稱和圓括弧 ()。
任何傳入參數和自變數必須放在圓括弧中間,圓括弧之間可以用於定義參數。
函數的第一行語句可以選擇性地使用文檔字串—用於存放函數說明。
函數內容以冒號起始,並且縮排。
return [運算式] 結束函數,選擇性地返回一個值給調用方。不帶運算式的return相當於返回 None。
Python 函數定義的文法
Python 定義函數使用 def 關鍵字,一般格式如下:
def 函數名(參數列表): 函數體
Python 函數的定義樣本
# 例:定義函數,輸出”Hello World”def hello(): print("Hello World!")
Python 函數的調用
函數不調用就不會執行。調用函數通過函數名完成。
# 例:調用我們之前定義的hello函數:def hello() : print("Hello World!")hello()
輸出:
Hello World!
Python 函數的參數傳遞
def hello(name) : print("Hello {}".format(name))hello(‘Mrzhang‘)
輸出:
Hello Mrzhang
Python 函數關鍵字參數
def hello(name,age=18) : print("Hello my name is {},今年{}歲".format(name,age))hello(‘Mrzhang‘)hello(‘Mrzhang‘,22)hello(age=66,name=‘Mrli‘)
輸出:
Hello my name is Mrzhang,今年18歲Hello my name is Mrzhang,今年22歲Hello my name is Mrli,今年66歲
注:參數中傳入不可變類型的資料,相當於將原資料複製了一份.
注:參數中傳入可變類型的資料,可以對原有資料進行操作,也可以重新賦值.
Python 函數的return語句
def hello(name) : print("Hello {}".format(name)) return ‘我是一個字串傳回值‘hello(‘Mrzhang‘)print(‘-----我是一條分割線-----‘)print(hello(‘Mrli‘))
輸出:
Hello Mrzhang-----我是一條分割線-----Hello Mrli我是一個字串傳回值
變數範圍
Python 中只有模組(module),類(class)以及函數(def、lambda)才會引入新的範圍,其它的代碼塊(如 if/elif/else/、try/except、for/while等)是不會引入新的範圍的,也就是說這些語句內定義的變數,外部也可以訪問.
# 例:x = int(10) # python內建範圍y = 2 # 當前模組中的全域變數Globaldef outfuction(): outfx = 2 # 外層範圍 def infunction(): infx = 3 # 局部範圍
全域變數和局部變數
定義在函數內部的變數擁有一個局部範圍,定義在函數外的擁有全域範圍。局部變數只能在其被聲明的函數內部訪問,而全域變數可以在整個程式範圍內訪問。調用函數時,所有在函數內聲明的變數名稱都將被加入到範圍中。
# 例:total = 0; # 這是一個全域變數def sum( arg1, arg2 ): total = arg1 + arg2 # total在這裡是局部變數. print ("函數內是局部變數 : ", total) return totalsum( 10, 20 )print ("函數外是全域變數 : ", total)
內建函數
內建函數見菜鳥教程
http://www.runoob.com/python3/python3-built-in-functions.html
模組模組的概念
模組是一個包含所有你定義的函數和變數的檔案,其尾碼名是.py
模組可以被別的程式引入,以使用該模組中的函數等功能。這也是使用 python 標準庫的方法。
模組的使用import 語句
import os # 匯入系統內建模組 osprint (os.listdir()) # 調用os模組的listdir()方法 遍曆當前檔案夾的所有檔案
輸出:
[‘test.py‘] # 你輸出的和我可能不太一樣,需要查看你目前的目錄下有哪些檔案
自建一個模組 並寫入兩個方法 一個說你好 一個說拜拜
然後匯入 並調用兩個方法
通過絕對路徑調用模組
from…import 語句
匯入模組中的指定 部分/方法 到當前命名空間下
from tool.test1 import sayHello,sayByesayBye()sayHello()
輸出:
Byehello
如:
Python dir()函數
內建的函數 dir() 可以找到模組內定義的所有名稱。以一個字串列表的形式返回.
Python基礎第三課