在python類中什麼時候要把變數放到括號裡,什麼時候不需要?

時間 2025-04-14 15:55:15

1樓:網友

captain2005的是正確的。

這兩個變數本來就不需要放進__init__的初始化引數中,如果你真的想要在呼叫時能夠重新定義這兩個引數,可以這樣寫:

class randomwalk():

def __init__(self,num_points=5000,x_values:list=[0],y_values:list=[0]):

其次,第乙個num_points是這個類的初始化函式中的乙個引數,這個引數(變數)只能夠在初始化函式中使用,而不能在這個類的其它方法中使用。將num_points這個變數定義為這個類的乙個屬性,可以在這個類的其它方法中使用獲取並繼續使用。

上面我給的一段**中,也是將原本為__init__函式內部的變數x_values和y_values定義為這個類的乙個屬性,可以在這個類的其它方法中使用。

2樓:網友

因為給的是常量,不是通過建構函式賦值的情況。

中括號裡面的0表示所有元素都為0的list,並不是通過括號裡面的引數賦值的,跟num_points=5000還是不一樣的。

如果需要通過建構函式賦值,那麼可以寫成。

class randomwalk():

def __init__(self,num_points=5000,x_values,y_values):

這樣的話構造randomwalk物件的時候需要傳入三個引數。

obj=randomwalk(6000,[0,0,2,3,4],[0,1,2,3,4,5])

3樓:網友

因為x_values和y_values這兩個屬性不需要在初始化的時候通過函式賦值。

python 類 賦值是否加括號的問題

4樓:蒼狼_白鹿

物件呼叫方法時, 實際上是通過類呼叫的。

a = muffedcalculator()實際上是這樣呼叫的 , expr)

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

python問題 在函式內使用全域性變數的時什麼時候需要加global,什麼時候不用?

5樓:自我程式設計

global是用於宣告全域性。

變數。當你的函式中變數有賦值語句,而這個變數名又剛好同全域性變數一樣,這時候,如果你希望用的是全域性變數就要加global,反之函式就會建立自己的區域性變數。

簡單說:函式內使用全域性變數,只要函式內沒有使用這個變數名來做賦值語句,就不需要加global。

python中要在什麼情況下使用變數

6樓:網友

在python中,變數是儲存在記憶體中的值,也就意味著使用python中的變數會開闢記憶體空間,python直譯器會根據變數型別去開闢不同的記憶體空間進行變數值的儲存,當你的程式需要儲存值內容的時候就需要用到變數。

在python中,變數定義時不需要提前定義型別,直譯器會自動進行定義,如果需要改變數的型別則需要使用另外的函式。在使用變數的時候,不需要提前宣告,只需要給這個變數賦值即可。但是,當用變數的時候,必須要給這個變數賦值;如果只寫乙個變數,而沒有賦值,那麼python認為這個變數沒有定義。

python class 不加括號

7樓:日time寸

class mymsg:

是舊的書寫方式。

class mymsg(object):

是新的書寫方式,在python3中只允許新的書寫方式,所以建議使用新的書寫方式。

8樓:賣咖啡的二貨

最簡單的類的定義:

class classname:..

class classname():

但是不如沒有括號簡潔,括號的作用是宣告這個類是繼承自別的類的,如果沒有繼承的話是沒必要加的。

class classname(baseclass):.

python中關於函式不加括號的問題

9樓:

python中所有都來是object(物件)。自def b(y)定義了乙個函式object。而這個物件是可以呼叫的,即用圓括號加引數列表的方式呼叫。

所以 return b就是將這個物件返回。

a(2)(3)首先呼叫a()這個函式(也是乙個物件),生成乙個新的函式物件b,功能是返回2+y。

a(2)(3)等價於。

x = a(2)

x(3)

10樓:網友

加括號是函式呼叫,不加括號是個函式變數,相當於c的函式指標。

python在處理變數的時候為什麼會有用括號的和用點的

11樓:網友

函式使用方式被,len()是個單獨的函式,upper()你可以當是字串的方法。

len()不也是方法嗎?我看了幾個教材都說是方法啊,不過也有說內建函式的,懵了。

函式,對於類來說是方法。python3以前的定義是比較混亂的,當然也包括翻譯的原因,3以後以類似c和c++的一切行為都有值的方式,但這對你來說不重要。

python新手,在python中類中的self

任何實現了特殊方法 getitem 的類 內建的列表類list 元祖類tuple 集合類set 字串類str都實現了這個特殊方法,因此它們都可以通過索引來訪問物件的成員 的物件都可以通過索引 下標 來訪問這個物件的成員。而self index 只不過是通過索引來訪問當前物件的成員罷了。這是一個例子 ...

C 中什麼時候用類?什麼時候用結構體

諸葛澤熙 類就像一個物件,有自己的變數屬性,自己的方法。是事物的抽象 結構體的話,只是在裡面儲存資料,擁有成員變數和函式。結構體定義並不是定義一個變數,而是定義了一種資料型別 c 中類和結構體的意義是一樣的,只不過一個成員預設為private,一個為public 保留結構體這樣的定義只是為了和c相容...

Python中類的定義規是什麼?

類的概念 類 class 用來描述具體相同的屬性和方法的物件的集合。定義了該集合中每個物件所共有的屬性和方法。物件是類的示例。類變數 類變數在整個例項化的物件中是公用的。類變數定義在類中且在函式體之外。類變數通常不作為例項變數使用。例項變數 定義在方法中的變數,只作用於當前例項的類。方法 類中定義的...