什麼是函式
函式其實是一把工具
使用函式的好處:
1.解決**冗餘問題。
2.使**的結構更清晰
3.容易管理
函式的使用必須遵循:先定義,後呼叫
函式定義語法:
def 函式名(引數1,引數2....):
'''注釋:宣告函式'''
邏輯**
return 返回值
def:defind 定義。
函式名:必須看其名知其意。
():接受外部傳入的引數
注釋:用來宣告函式的作用。
return :返回給呼叫者的值
定義函式的三種形式:
1.無參函式
不需要接受外部傳入的引數。
2.有參函式
需要接受外部傳入的引數。
3.空函式
pass
1.無參函式
def login():
user=input('請輸入使用者名稱').strip()
pwd=input('請輸入密碼').strip()
if user=='tank' and pwd=='123':
print('login successful!')
else:
print('login error!')
#函式的記憶體位址
print(login)
#函式呼叫
login()
2.有參函式
#username,password用來接受外部傳入的值
def login(username,password):
user=input('請輸入使用者名稱').strip()
pwd=input('請輸入密碼').strip()
if user==username and pwd==password:
print('login successful!')
else:
print('login error!')
#若函式在定義時需要接受引數,呼叫者必須為其傳參
login('tank','123')
3.空函式
def login():
#代表什麼都不做
pass
引數的引數:
#在定義階段:x,y稱之為形參
def func(x,y):
print(x,y)
#在呼叫階段:10,100稱之為實參
func(10,100)
位置引數:
位置形參
位置實參
必須按照位置--傳參
#在定義階段:位置形參
def func(x,y):
print(x,y)
#在呼叫階段:10,100稱位置實參
func(10,100)
關鍵字引數:
關鍵字實參
按照關鍵字傳參
#位置形參x,y
def func(x,y):
print(x,y)
#在呼叫階段:x=10,y=100稱為關鍵字引數
func(y=111,x=10)
#不能少傳
#func(y=111)#報錯
#不能多傳
預設引數
在定義階段,為引數設定預設值
def foo(x=10,y=20):
print(x,y)
#不傳參,則使用預設引數
foo()
#傳參,使用傳入的引數
foo(200,300)
函式的巢狀定義:
在函式內部定義函式
函式物件:
函式的記憶體位址稱之為函式物件
函式的命名空間:
內建:python解析器自帶的都稱之為「內建命名空間」。
全域性:所有頂著頭寫的變數,函式...都稱之為「全命名空間」。
區域性:在函式內部定義的,都稱為「區域性命名空間」
命名空間載入順序:
內建->全域性命名空間->區域性命名空間
命名空間查詢順序:
區域性命名空間->全域性命名空間->內建
#函式的巢狀定義
def func1():
print('from func1...')
def func2():
print('from func2...')
#函式物件
print(func1)
def f1():
pass
def f2():
pass
dic1=
choice=input('請選擇功能編號:')
if choice=='1':
print(dic1[choice])
dic1[choice]()
elif choice=='2':
print(dic1[choice])
dic1[choice]()
x=10
#命名空間
#函式的巢狀定義
def func1():
#x=20
print('from func1...')
print(x) #報錯 **時自上由下執行,print(x)無法引用x=30,所以報錯
x=30
def func2():
print('from func2...')
func1()
python呼叫其他程式 python呼叫其他程式
在python中可以方便地使用os模組執行其他的指令碼或者程式,這樣就可以在指令碼中直接使用其他指令碼,或者程式提供的功能,而不必再次編寫實現該功能的 為了更好地控制執行的程序,可以使用win32process模組中的函式。如果想進一步控制程序,則可以使用ctype模組,直接呼叫kernel32.d...
python呼叫所有函式 python 呼叫函式
python內建了很多有用的函式,我們可以直接呼叫。也可以在互動式命令列通過help abs 檢視abs函式的幫助資訊。呼叫abs函式 abs 100 abs 20 abs 12.34 12.34 呼叫函式的時候,如果傳入的引數數量不對,會報typeerror的錯誤,並且python會明確地告訴你 ...
C 呼叫Python及間接呼叫Python三方庫
本文章目的是脫離安裝python環境的前提下,由c 程式呼叫python程式及python相關三方庫 紅色部分是生成路徑下直譯器執行時依賴 將紅色部分拷貝到c 編譯主exe路徑下即可,並把需要允許的py檔案頁考過去 也就是.py檔案需和編譯生成的.exe檔案放在一起 藍色部分是vs配置編譯時依賴,需...