1樓:匿名使用者
任何實現了特殊方法__getitem__的類(內建的列表類list、元祖類tuple、集合類set、字串類str都實現了這個特殊方法,因此它們都可以通過索引來訪問物件的成員)的物件都可以通過索引(下標) 來訪問這個物件的成員。
而self[index]只不過是通過索引來訪問當前物件的成員罷了。
這是一個例子(縮排格式見下圖):
class c:
def __init__(self):
self.a=666
self.b="ok"
self.c=3.14
def __getitem__(self,n):
if n==1:
return self.a
elif n==2:
return self.b
elif n==3:
return self.c
else:
return none
def show(self):
print(self[1],
self[2],
self[3])
c().show()
執行截圖:
2樓:
這是索引用法。
如:l=['a','b','c'],l[0]的值是'a',l[2]的值就是'c'
s='hello',s[4]的值是'o'
python的新手問題,Python新手問題,基本列表解析
python中,列表是所謂的 可迭代物件 這種物件支援迭代協議,即一系列python保留方法,能夠在每一次迭代中自動返回一個值。以上為概念 在python中,python可以在for迴圈中自動為可迭代物件進行迭代,即 可以這樣寫 major cis geog aeis math for i in m...
在python中定義函式python中怎麼呼叫自定義函式
涉及到狀態儲存,可以使用函子 書上這麼翻譯的,不曉得其他人是不是也這樣叫 給你個例子,你比對著改。如果不懂,自己再延這個方向去檢視資料。class strip def init self,characters 初始化,將需要保留的狀態資訊存起來 self.characters characters ...
新手python簡單程式報錯求解
a x c 是一個 表示式,返回的是這個表示式的結果,即一個 bool 型別的物件 extend 方法接受的引數 for x in a 語句中x是a中的元素,而不是下標 索引 應該直接使用x和c比較 a x c 的結專果是bool值,按題意不應該新增屬到b。程式建議改為 def threshold ...