gpt4 book ai didi

python - 我正在设置 python 类,但它打印
转载 作者:太空宇宙 更新时间:2023-11-03 20:46:38 25 4
gpt4 key购买 nike

我正在设置 python 类,但它在 0x03391d90 处打印 <ma​​in.deteil 对象

我尝试在谷歌中搜索,但没有帮助我

Python 类

class person:
def __init__(self,fname,lname):
self.firstname = fname
self.lastname = lname

def printname(self):
print(self.firstname, self.lastname)

class student(person):
def __init__(self,fname,lname,year):
person.__init__(self,fname,lname)
self.graduate_year = year

def welcome(self):
print("Welcome", self.firstname, self.lastname, self.graduate_year)

class dateils(person):
def __init__(self,fname,lname, age, gender,):
person.__init__(self, fname, lname)
self.age = 17
self.gender = "male"

def student_details(self):
print(self.firstname, self.lastname, self.age,self, self.gender)


#Student
x = student("Enter your name:", "Enter your lastname: ", 2019)

x.welcome()

#person details
d = dateils(input("Enter your name"), input("Enter your lastname"), input("Enter your age"), input("Enter your gender"))
d.student_details()

我期望输出的详细信息是输入info,但实际输出是输入了姓名、输入了姓氏、输入了年龄,以及位于 0x03391D90> 的 <ma​​in.dateils 对象男性

最佳答案

在您的 student_details 函数中,您打印一个对象:

def student_details(self):
print(self.firstname, self.lastname, self.age,self, self.gender)
^
|
HERE ----------------------------------------------+

您没有在类中实现 __str____repr__ 函数,因此它会打印存储对象的内存点(这是基本行为)。您应该删除此 self 或将其替换为 self.graduate_year 才能正确打印您想要的所有内容。

关于python - 我正在设置 python 类,但它打印 <main.deteil object at 0x03391d90,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56546441/

25 4 0

Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com