它已經創建了一個描述一個人(姓名、地址等)的類。.它必須列印出它在下面幾行中的代碼的所有屬性
class Person:
personNo=0
def _init_(unit,first_name,last_name,age,address):
unit.personsfirstname=first_name
unit.lastname=last_name
unit.personsage=age
unit.address=address
unit.personNo =1
def ShowInfo(unit):
print("Ονομα: " unit.personsfirstname "Επιθετο: " unit.lastname "Ηλικια: " unit.personsage "Οδο?: " unit.address=address)#The problem is here
person1=Person("George","Stefanopoulos","55","Alpha street 33")
person2=Person("Μαρια","Πενταγιωτισα","25","Παπαλαμπρενα? 28")
所以,當代碼執行時出現錯誤:運算式不能包含賦值也許你的意思是“==”?. 問題出現在筆記的位置。必須注意,此代碼基于另一個完美運行的示例代碼
uj5u.com熱心網友回復:
首先,建構式應該是__init__而不是_init_
其次,您=在print函式內部有一個嘗試創建輸出字串的函式。
我建議使用__str__方法:
class Person:
personNo=0
def __init__(self,first_name,last_name,age,address):
self.personsfirstname=first_name
self.lastname=last_name
self.personsage=age
self.address=address
self.personNo =1
def __str__(self):
s = "Ονομα: " self.personsfirstname " Επιθετο: " self.lastname " Ηλικια: " self.personsage " Οδο?: " self.address
return s
person1=Person("George","Stefanopoulos","55","Alpha street 33")
person2=Person("Μαρια","Πενταγιωτισα","25","Παπαλαμπρενα? 28")
# thanks to __str__ method, you can do:
print(person1)
Ονομα: George Επιθετο: Stefanopoulos Ηλικια: 55Ο δο?: Alpha street 33
print(person2)
Ονομα: Μαρια Επιθετο: Πενταγιωτισα Ηλικια: 25Οδο?: Παπαλαμπρενα? 28
uj5u.com熱心網友回復:
=用于賦值。
假設您想像顯示名稱一樣顯示地址,請嘗試如下操作:
class Person:
personNo=0
def __init__(unit,first_name,last_name,age,address):
unit.personsfirstname=first_name
unit.lastname=last_name
unit.personsage=age
unit.address=address
unit.personNo =1
def ShowInfo(unit):
print("Ονομα: " unit.personsfirstname "Επιθετο: " unit.lastname "Ηλικια: " unit.personsage "Οδο?: " unit.address)
person1=Person("George","Stefanopoulos","55","Alpha street 33")
person2=Person("Μαρια","Πενταγιωτισα","25","Παπαλαμπρενα? 28")
如果您只想回傳True或False獲取地址,但不確定為什么要這樣做,請執行以下操作:
class Person:
personNo=0
def __init__(unit,first_name,last_name,age,address):
unit.personsfirstname=first_name
unit.lastname=last_name
unit.personsage=age
unit.address=address
unit.personNo =1
def ShowInfo(unit):
print("Ονομα: " unit.personsfirstname "Επιθετο: " unit.lastname "Ηλικια: " unit.personsage "Οδο?: " str(unit.address==address))
person1=Person("George","Stefanopoulos","55","Alpha street 33")
person2=Person("Μαρια","Πενταγιωτισα","25","Παπαλαμπρενα? 28")
此外,您使用_init_并且可以使用__init__.
沒有以正確的方式宣告建構式,您會因嘗試Person使用某些引數創建類的新實體而收到錯誤。你的功能_init_是method班級的常態。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/364457.html
