python再複習(3)函式

2021-08-07 19:42:30 字數 2129 閱讀 8432

函式的簡介、呼叫函式、定義函式就不再贅述。

關於習題,python寫乙個接一元二次方程:

# -*- coding: utf-8 -*-

import math

defquadratic

(a, b, c):

# 先求判別式

deta = ((b) * (b)) - (4 * (a) * (c))

if (deta < 0):

x1_1 = ((-1) * (b)) / (2 * (a))

x1_2 = ((math.sqrt((-1) * deta)) / (2 * (a)))

print('此方程有共軛復根,第乙個復根為: \n' + str(x1_1) + '+' \

+ str(x1_2) + 'i')

print('第二個復根為: \n' + str(x1_1) + '-' + str(x1_2) + 'i')

x1_1 = ((-1) * (b)) / (2 * (a))

x1_2 = ((math.sqrt((-1) * deta)) / (2 * (a)))

elif (deta == 0):

print('此方程有相同解: ')

x1and2 = (-1) * (b) / (2 * (a) * (c))

print(x1and2)

else:

x1 = ((-1) * (b) + (math.sqrt(deta))) / (2 * (a))

print('此方程第乙個解為: ' + str(x1))

x2 = ((-1) * (b) - (math.sqrt(deta))) / (2 * (a))

print('此方程第二個解為: ' + str(x2))

p =

for x in (1, 2, 3):

print('請輸入ax^2+bx+c的' + chr(96 + x))

quadratic(p[0], p[1], p[2])

接下來說一說函式的引數

對於乙個簡單的函式,例如

def

power

(x):

return x * x

x就是位置引數

在呼叫這個函式的時候,必須傳入也必須傳入1個位置引數。

對於:

def

power

(x, n=2):

s = 1

while n > 0:

n = n - 1

s = s * x

return s

x則為位置引數,n為預設引數。如果是power(2,3),那計算的就是2的3次方,輸入power(2)算得是2的平方,也就是說,位置引數依然要輸入,而預設引數可以不輸入,輸入了就按你輸入的算,不輸入就按預設的算。使用預設引數要注意乙個變數的坑,在廖老師這章節有寫。

對於函式:

def

calc

(*numbers):

sum = 0

for n in numbers:

sum = sum + n * n

return sum

numbers是乙個可變引數,可以用calc(2,3)也可以calc(2,3,4,5,6)等等,個數不限可編。而對於現成的list和tuple,可以:

a=[2,4,5]

calc(*a)

在函式內部,a中的元素會被組裝成乙個元組來使用。

對於關鍵字引數暫時沒什麼講的,區別於可變引數的的乙個號搭配列表和元組,關鍵字引數搭配得是兩個號和字典。命名關鍵字引數暫時也沒什麼說的。

廖老師說過:

在python中定義函式,可以用必選引數、預設引數、可變引數、關鍵字引數和命名關鍵字引數,這5種引數都可以組合使用。但是請注意,引數定義的順序必須是:必選引數、預設引數、可變引數、命名關鍵字引數和關鍵字引數。

說說遞迴,遞迴神,迭代人,我還是個凡人,暫時說不出什麼門道,先挖個坑。

假期python複習3

帶引數的裝飾器 500個函式 timmer out flage def timmer out flag def timmer func def inner args,kwargs if flag start time.time ret func args,kwargs end time.time p...

Python閉包和裝飾器再複習

在乙個外函式中定義了乙個內函式,並且內函式用到了外部函式的變數,而且外函式的返回值是內函式的引用,這就構成了乙個閉包。一般情況下,在我們認知當中,如果乙個函式結束,函式的內部所有東西都會釋放掉,還給記憶體,區域性變數都會消失。但是閉包是一種特殊情況,如果外函式在結束的時候發現有自己的臨時變數將來會在...

java再複習 異常總結

異常體系 throwable頂層介面 error 錯誤體系,發生這種錯誤,代表發生了不可挽回的錯誤,jvm會直接停止執行,並不提供任何可處理機制,只列印相關錯誤資訊。exception 異常體系,發生這種異常,相當於生病,有的可處理,有的不可處理,但是都是只是 病 沒有致命的問題,可以解決。runt...