問題1看看錯誤:file "", line 3
def__init__(self,name):
syntaxerror: invalid syntax
在def和__init__之間應該有乙個空格,因此__init__函式的定義應該是:
^$問題2
else語句不採用if或{}do之類的表示式,因此會導致以下語法錯誤:file "", line 12
else(food=="mondongo"):
syntaxerror: invalid syntax
else表示其他所有內容,因此如果您希望它只適用於「mondongo」,則應該在那裡使用另乙個elif。在
問題3函式eat在__init__函式內定義,導致: in ()
> 1 p.eat('leche')
attributeerror: personaje instance has no attribute 'eat'
如果取消插入函式(向左移動4個空格),則eat將在類中定義,而不是在init函式中定義。所以基本結構應該這樣縮排:class personaje:
def __init__(...):
pass
def eat(...):
pass
問題4未將personaje名稱設定為__init__函式中指定的名稱。如果您希望預設名稱為pepe,並鍵入warrior,我建議您將init函式改為如下所示:def __init__(self, name="pepe", type="warrior"):
self.name = name
self.type = type
self.health = 100
您的最後乙個personaje類現在應該如下所示:class personaje:
def __init__(self, name="pepe",type="warrior"):
self.name = name
self.type = type
self.health = 100
def eat(self, food):
if(food=="manzana"):
self.health -= 10
elif(food=="leche"):
self.health += 5
else:
self.health += int(0.0001)
Python 中冒號使用
m 代表列表中的第m 1項到最後一項 n 代表列表中的第一項到第n項 import numpy as np a 1,2,3.4,5 print a 1 2 3 4 5 print a 1 取最後乙個元素 結果 5 print a 1 除了最後乙個取全部 結果 1 2 3 4 print a 1 取從...
Python冒號的解釋
1.沒什麼首次沒有為第二個,跳了三個 它得到的切片序列的每乙個第三個專案。擴充套件片是你想要的。新在python 2.3 2.python的序列切片位址可以寫成 開始 結束 一步 和任何啟動,停止或結束可以被丟棄。a 3 是每第三個序列。3.seq n 是每乙個序列n個項的整個序列中。例如 rang...
python切片冒號的用法
python的切片主要用在tuple和list這類帶有索引index的資料結構上,用來取具體陣列元素,或某一段陣列元素 正索引 0,1,2,3,4,這個就不說了 負索引 1為最後乙個元素,2為倒數第二個 object start end step start 起始index,包含 end 結束ind...