函式的定義

2022-05-07 05:00:09 字數 2933 閱讀 5078

- 什麼是函式?

- 為什麼要用函式?

- 函式的分類:內建函式與自定義函式

- 如何自定義函式

- 語法

- 定義有引數函式,及有參函式的應用場景

- 定義無引數函式,及無參函式的應用場景

- 定義空函式,及空函式的應用場景

- 呼叫函式

- 如何呼叫函式

- 函式的返回值

- 函式引數的應用:形參和實參,位置形參,位置實參,關鍵字實參,預設形參,*args,**kwargs

- 高階函式(函式物件)

- 函式巢狀

- 作用域與命名空間

- 裝飾器

- 迭代器與生成器及協程函式

- 三元運算,列表解析、生成器表示式

- 函式的遞迴呼叫

- 內建函式

- 面向過程程式設計與函式式程式設計

如果現在有乙個需求需要實現使用者登入註冊的功能,我們該怎麼實現呢?

# 註冊

username = input('username: ').strip()

pwd = input('password: ').strip()

with open('38a.txt', 'a', encoding='utf8') as fa:

fa.write(f":\n")

fa.flush()

# 登入

inp_username = input('username: ').strip()

inp_pwd = input('password: ').strip()

with open('38a.txt', 'rt', encoding='utf8') as fr:

for user_info in fr:

user_info = user_info.strip('\n')

user_info_list = user_info.split(':')

if inp_username == user_info_list[0] and inp_pwd == user_info_list[1]:

print('login successful')

break

else:

print('failed')

假設現在你是下水道工,如果你事先準備好你的工具箱,等你接到修理下水道的工作的時候,你直接把你的工具箱拿過去直接使用就行了,而不需要臨時準備錘子啥的。

在程式中,函式就是具備某一功能的工具,事先將工具準備好就是函式的定義,遇到應用場景拿來就用就是函式的呼叫,所以需要注意的是:

如果不使用函式,寫程式時將會遇到這三個問題:

先定義函式,後呼叫。

def 函式名(param1、param2……):

"""函式功能的描述資訊

:param1:描述

:param2:描述

:return:返回值

"""code 1

code 2

code 3

...return 返回值

函式名(param1、param2……)
# 註冊功能函式

def register():

"""註冊功能"""

username = input('username: ').strip()

pwd = input('password: ').strip()

with open('38a.txt', 'a', encoding='utf8') as fa:

fa.write(f":\n")

fa.flush()

register()

# 復用

register()

register()

# 登入功能函式

def login():

"""登入功能"""

inp_username = input('username: ').strip()

inp_pwd = input('password: ').strip()

with open('38a.txt', 'rt', encoding='utf8') as fr:

for user_info in fr:

user_info = user_info.strip('\n')

user_info_list = user_info.split(':')

if inp_username == user_info_list[0] and inp_pwd == user_info_list[1]:

print('login successful')

break

else:

print('failed')

login()

def func():

bar() # 不屬於語法錯誤,不會報錯

print('*'*10)

def bar():

print('from bar')

def foo():

print('from foo')

bar()

foo()

'''from foo

from bar

'''

def foo():

print('from foo')

bar()

def bar():

print('from bar')

foo()

'''from foo

from bar

'''

函式定義(對函式定義的使用)函式呼叫

對於函式呼叫,首先我們一定先要理解函式定義 函式定義 1.返回值型別 乙個函式可以返回乙個值,在函式定義中 2.函式名 給函式起個名稱 3.函式體語句 花括號內的 函式內需要執行的語句 4.return 表示式 和返回值型別掛鉤,返回相應的資料 語法 返回值型別 函式名 引數列表 例如我們來寫乙個加...

函式的定義

1.函式的一般形式 定義乙個函式需要以下規則 任何傳入引數和自變數必須放在圓括號中間,圓括號中間可以用於自定義引數。函式的第一行語句可以選擇性的使用文件字串 用於存放函式說明 函式內容以冒號起始,並且縮排 return 表示式 表示函式結束,不帶表示式的return,返回none 建立乙個函式 de...

函式的定義

定義原則def addnum num1,num2 函式的第一行語句可以選擇性地使用文件字串 用於存放函式說明。實現兩個數字的相加,num1,num2叫做形參 param num1 int,float param num2 int,float return 函式內容以冒號起始,並且縮排。total n...