1樓:育知同創教育
python中函式引數的定義主要有四種方式:
1. f(arg1,arg2,…)
這是最常見的定義方式,一個函式可以定義任意個引數,每個引數間用逗號分割,用這種方式定義的函式在呼叫的的時候也必須在函式名後的小括號裡提供個數相等
的值(實際引數),而且順序必須相同,也就是說在這種呼叫方式中,形參和實參的個數必須一致,而且必須一一對應,也就是說第一個形參對應這第一個實參。例如:
複製****如下:
def a(x,y):print x,y
呼叫該函式,a(1,2)則x取1,y取2,形參與實參相對應,如果a(1)或者a(1,2,3)則會報錯。
2. f(arg1,arg2=value2,…)
這種方式就是第一種的改進版,提供了預設值,例如:
複製****如下:
def a(x,y=3):print x,y
呼叫該函式,a(1,2)同樣還是x取1,y取2,但是如果a(1),則不會報錯了,這個時候x還是1,y則為預設的3。上面這倆種方式,還可以更換引數位置,比如a(y=4,x=3)用這種形式也是可以的。
3. f(*arg1)
上面兩種方式是有多少個形參,就傳進去多少個實參,但有時候會不確定有多少個引數,則此時第三種方式就比較有用,它以一個*加上形參名的方式來表示這個函
數的實參個數不定,可能為0個也可能為n個。注意一點是,不管有多少個,在函式內部都被存放在以形參名為識別符號的元組中。
複製****如下:
def a(*x):print x
>>> a(1,2,3)(1, 2, 3)>>> a(x=1,y=2,z=3)traceback (most recent call last): file "", line 1, in typeerror: a() got an unexpected keyword argument 'x'
4. f(**arg1)
形參名前加兩個*表示,引數在函式內部將被存放在以形式名為識別符號的dictionary中,這時呼叫函式的方法則需要採用arg1=value1,arg2=value2這樣的形式。
複製****如下:
def a(**x):print x>>> a(x=1,y=2,z=3) #存放在字典中》 a(1,2,3) #這種呼叫則報錯traceback (most recent call last): file "", line 1, in typeerror:
a() takes exactly 0 arguments (3 given)
如何求函式的自變數的取值範圍?
2樓:吳凱磊
求函式的自變數的取值範圍就是求函式的定義域;
求函式定義域的情形和方法總結:
已知函式解析式時:只需要使得函式表示式中的所有式子有意義。
(1)常見要是滿足有意義的情況簡總:
①表示式中出現分式時:分母一定滿足不為0;
②表示式中出現根號時:開奇次方時,根號下可以為任意實數;開偶次方時,根號下滿足大於或等於0(非負數);
③表示式中出現指數時:當指數為0時,底數一定不能為0;
④根號與分式結合,根號開偶次方在分母上時:根號下大於0;
⑤表示式中出現指數函式形式時:底數和指數都含有x,必須滿足指數底數大於0且不等於1.(0《底數<1;底數》1);
⑥表示式中出現對數函式形式時:自變數只出現在真數上時,只需滿足真數上所有式子大於0,且式子本身有意義即可;自變數同時出現在底數和真數上時,要同時滿足真數大於0,底數要大0且不等於1。[ f(x)=logx(x²-1) ]
注:(1)出現任何情形都是要注意,讓所有的式子同時有意義,及最後求的是所有式子解集的交集。
(2)求定義域時,儘量不要對函式解析式進行變形,以免發生變化。(形如:f(x)=x²/x)
2..抽象函式(沒有解析式的函式)解題的方法精髓是「換元法」,根據換元的思想,我們進行將括號為整體的換元思路解題,所以關鍵在於求括號整體的取值範圍。總結為:
(1)給出了定義域就是給出了所給式子中x的取值範圍;
(2)在同在同一個題中x不是同一個x;
(3)只要對應關係f不變,括號的取值範圍不變;
(4)求抽象函式的定義域個關鍵在於求f(x)的取值範圍,及括號的取值範圍。
3.複合函式定義域
複合函式形如:y=f(g(x)),理解複合函式就是可以看作由幾個我們熟悉的函式組成的函式,或是可以看作幾個函式組成一個新的函式形式。
3樓:成代芙宿琰
求函式的自變數的取值範圍有如下原則:
用解析式表示的函式要使其表示式有意義;
如:(1),解析式為整式的,自變數可取任意實數:
(2),解析式是分式的,自變數應取母不為0的實數:
(3),解析式是二次根式或偶次根式的,自變數取被開方數不小於0的實數等.
(4)對於函式解析式複雜的複合函式,應全面考慮,使其解析式中各式都有意義.
如y=1/x+根(3x-1),其取值為x≥1/3.2,對於有實際意義的函式,應當根據實際意義確定其自變數的取值範圍.
python 怎麼將自定義函式的變數在外部呼叫
4樓:英雄傻小
class dayin():
def __init__(self):
self.end = ''
self.end2 = ''
self.end3 = ''
def set_end(self):
self.end = '1'
def set_end2(self):
self.end2 = '2'
def set_end3(self):
self.end3 = '3'
m = dayin()
m.set_end()
m.set_end2()
m.set_end3()
data = [[m.end],[m.end2],[m.end3]]print(data)
1、你的dayin(object)傳了一個物件,去掉。
2、你在初始化函式__init__裡面寫了引數,所以你在下面m = dayin()必須加引數。我是直接去掉了。預設為""
3、你的變數和函式名稱重複,下面呼叫時會有問題。所以我修改了。
python怎麼在具體函式中宣告全域性變數
5樓:月黑風高殺人區
在一個函式中用global宣告一個變數,在函式外是可以呼叫的,
但是在另外一個函式中就無法使用(我本地測試是無法使用,不知道是不是這樣),
要想所有函式都能使用,只能在函式外定義了
對數函式和指數函式自變數的取值範圍
對數函式的自變數 也即是真數 需大於0.指數函式的自變數 也即是指數 可取任何實數。對數a 0。指數有01 什麼是?函式中自變數x取值範圍,取值範圍怎麼求 對於一般函式,自變數x取值範圍即所有使函式式有意義的x取值範圍 一些題目中給出了函式的值域,這種情況下可以通過反函式求出自變數的取值範圍限制。有...
函式的奇偶性與自變數次數的關係,函式的奇偶性和自變數的次數有什麼關係?
自變數是偶次冪的 是偶函式 在沒有常數項的情況下 奇次冪的是奇函式 函式的奇偶性和自變數的次數有什麼關係?高中數學裡 log是什麼意思?log在高中數學裡表示對數。一般地,函式y logax a 0,且a 1 叫做對數函式,也就是說以冪 真數 為自變數,指數為因變數,底數為常量的函式,叫對數函式。通...
函式yfx1,它的自變數是x還是x
自變數的取值範圍 定義域 如果是 2,2 的話,是 2 x 2 你首先搞清楚什麼是函式的定義,在搞清楚在函式的裡是什麼變引起值域的變化的,才好去理解。自變數是x,定義域是x 1而不是x,把x 1要當一個整體去看,如下 y f x 1 定義域 2,2 另t x 1 則 2 t 2,也就是 2 x 1 ...