初学Python,遇到AttributeError: 'Person' object has no attribute 'firstname'问题的解决方法

本文分享了一次Python编程中遇到的AttributeError异常经历,详细分析了在Person类实例化后无法正确访问firstname属性的原因,并提供了正确的解决方案。
部署运行你感兴趣的模型镜像

      最近在学习Python的类和对象内容时,尝试一个关于Person类的代码,出现一个问题:AttributeError: 'Person' object has no attribute 'firstname'。

class Person :
	hair = 'black'
	def __init__(self,firstname = 'charlie',age = 8):
		self.firstname = firstname
		self.age = age
	def say(self,content):
	   print(content)
p = Person()
print(p.firstname,p.age)

       百度其他人的解决办法都是考虑可能变量名与系统内部的冲突,于是我把name改成firstname,发现问题依然存在。后来我发现网上的代码init前后的下划线比我写的长一点,于是复制粘贴过来,运行果然可以了。

       回去看书,书上也写的很明确是双下画线开头,双下画线结尾。出现这个问题就是自己不认真看书的后果,记录下来警示自己。

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值