python類中定義的變數不能給函式用

2021-03-04 01:25:31 字數 4011 閱讀 8672

1樓:匿名使用者

value 是 ks的乙個類屬性 (class attribute), 你必須用 ks.value 來訪問它,把

for i in value 改成 for i in ks.value 即可。

python 類的變數呼叫自己類中函式的問題

2樓:匿名使用者

protected void syncexec (runnable runnable)

3樓:匿名使用者

php是全銀河系最好的程式語言.

python 在函式裡面定義的變數,在外面就不能用了嗎?

4樓:風吹的小羊

嚴格的說,這麼用絕對屬於沒有定義的。

不過有時候又可以是因為,如果你在程式開頭函式前面定義一些變數,原則上它會自動變成global的。

除非你另外啟執行緒,或者是有可能有與它重名的變數,否則可以直接在函式體內使用,當然也可以在後面的語句中使用。

函式式程式設計要記著ipo這個準則。就是每個函式最好都是有輸入input有輸出output。

python中函式外定義的變數在函式內可以使用嗎

5樓:匿名使用者

你寫的只是引用,也可以說讀取是可以的,但不能修改。

比如這樣寫,外面的i 仍然=0

6樓:反翽葚讛笀仕藖

嚴格的說,象你這麼用是絕對屬於沒有定義的。不過有時候又可以是因為,如果你在程式開頭函式前面定義一些變數,原則上它會自動變成global的。 除非你另外啟執行緒,或者是有可能有與它重名的變數,否則可以直接在函式體內使用,當然也可以在後面的語句中使用。

函式式程式設計要記著ipo這個準則。就是每個函式最好都是有輸入input有輸出output。函式體就是處理process。

盡量不要使用全域性變數,也不要使用預設值。乙個正規的做法是這樣: def example(a):

a=0 return a a=1 print example(a) 這是乙個標準用法,你就不用為global變數頭痛了。

python的class裡全域性變數有時不能被呼叫

7樓:育知同創教育

你在ex裡面定義的oo,所以你得先執行過ex之後才能執行start。

class test: def __init__(self,name='testa'): self.

x = 'age' self.name = name self.ex() #加上這個 self.

start() def ex(self): global oo oo = 'this is test' def start(self): print oo t=test()

如果不適用全域性變數的話,你可以self.oo:

class test: def __init__(self,name='testa'): self.

x = 'age' self.name = name self.ex() self.

start() def ex(self): self.oo = 'this is test' def start(self):

print self.oo t=test()

python中構建了乙個類,在定義了乙個函式時為什麼括號第乙個self有什麼用,為什麼不能給他賦值

8樓:

物件呼叫bai方法時, 實際

du上是通過類呼叫zhi的

a = muffedcalculator()a.calc(expr)

實際上是這樣

dao呼叫專的 muffledcalculator.calc(a, expr)

這樣self 就是 a, python隱含地把a 傳進方法屬 替代了self, 就成了繫結的方法, 就可以執行了. 否則就是非繫結方法

9樓:__盜亦有道

self 指的是你定義

復的這個類被呼叫創

制建了乙個例項bai時,self就是這du個例項。

可以這麼說,zhiself就是要使用你

dao這個函式的例項的名稱,這個self在類中必須要加,當然名字不一定是self,self只是傳統變數名一直被沿用了而已。

10樓:

這是python的類定義格式標準,self的使用與java的this相似,用於標識類的例項。

11樓:匿名使用者

加了self之後你可以在例項化後呼叫該函式。

python 我定義了乙個class,裡面明明定義了函式,等到引用時卻找不到了?

12樓:匿名使用者

你好:你這是用tk寫的視覺化介面;

下面是提示錯誤吧?

這裡面有乙個知識點:

***mand binding和event binding這是兩種不同的繫結方式;

你上網艘一下就知道了!

13樓:

不行,乙個class只能有乙個用於構造物件的__init__函式但python中的變數是無型別的,因此傳給__init__的引數可以是任何型別python中的函式引數在定義時可以有預設值,可以讓__init__函式接受多個引數,在後面的一些引數給出預設值的方法讓__init__接受不同個數的引數,並且執行型別檢查執行不同的**,用上述方法實現類的建構函式的多型性

14樓:黎孟漆才俊

params

就是(5,

5)(5,)*2

,就是2個5的元組,乘號可以理解成相加。"*"

*30就是30個「*"的字串

*params作為引數,前面的*號就是把params元組分解成元素的意思,這樣就分開成為2個引數了。實際上傳遞給了x,y

於是就執行了power(5,5)

python之為什麼類中函式的變數宣告要加self

15樓:

lass a:

def go(self):

self.one= 'sdf'

def go1(self):

print self.one

a = a()

a.go()

a.go1()

sdf==加了self,以後,這個變數就變成了全域性變數,在類中的其他函式中也可以呼叫。

python 在函式裡面定義的變數,在外面就不能用了?我不是很想用global

16樓:匿名使用者

嚴格的說,象你這麼用是絕對屬於沒有定義的。

不過有時候又可以是因為,如果你在程式開頭函式前面定義一些變數,原則上它會自動變成global的。 除非你另外啟執行緒,或者是有可能有與它重名的變數,否則可以直接在函式體內使用,當然也可以在後面的語句中使用。

函式式程式設計要記著ipo這個準則。就是每個函式最好都是有輸入input有輸出output。函式體就是處理process。

盡量不要使用全域性變數,也不要使用預設值。乙個正規的做法是這樣:

def example(a):

a=0return a

a=1print example(a)

這是乙個標準用法,你就不用為global變數頭痛了。

17樓:智應

注意縮排對齊

def example():

a = 0

print a

while, for也是一樣,沒有大括號所以對齊決定**是函式或迴圈的結束

18樓:匿名使用者

要注意變數的作用域。

你可以def example():

a = 0

return a

print example()

python中怎麼定義全域性變數,js中如何定義全域性變數?

複製 count 0 def fuc count print count count 1 for i in range 0,10 fuc count 複製 結果是 不是我們想要的結果。解決之道一 全域性變數 複製 global a a 3 def fuc global a print a a a 1...

在c中,定義類的變數,宣告類的變數和建立類的變數還有什麼例項化類的變數都是什麼意思

定義 宣告都是說的源 裡的,建立 例項化說的是執行時的。先定義 宣告了,編譯成目標位元組碼,執行時才能建立 例項化成物件,物件你就看成記憶體中實實在在存在的一片區域。c 為什麼不能在乙個類中呼叫另乙個類的變數,而必須是在方法裡例項化後的呼叫 你自己把自己都說進去了,你都說在classb中,是在執行b...

python定義函式,在python中定義函式

params 就是 5,5 5,2 就是2個5的元組,乘號可以理解成相加。30就是30個 的字串 params作為引數,前面的 號就是把params元組分解成元素的意思,這樣就分開成為2個引數了。實際上傳遞給了x,y 於是就執行了power 5,5 在python中定義函式 涉及到狀態儲存,可以使用...