python类变量和局部变量的访问

本文通过一个简单类的示例介绍了Python中类变量、局部变量及实例变量的区别与访问方式。展示了不同变量作用域的特点及其内存地址的变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天练习了下类变量和局部变量的访问,写一个简单的类来模拟测试下,

class A:
	name = "uu"  # 类变量 name
	
	def test(self):
		name = "dd"  # test方法中的局部变量 name,只能在test方法内部使用
		self.name = "sdd"  # 实例变量 name ,可以在整个类中使用,也可以通过类对象.name来使用(但是必须要先初始化)
		print("%s-%s-%s" %(A.name, name, self.name))
		print(A.name,id(A.name),end="--")
		print(name,id(name),end="--")
		print(self.name,id(self.name),end="--")
		self.test_1()
		
	def test_1(self):
		print("-----in test_1-----")
		#print("-----%s-----" % name)  # 报错,name not defined,因为name是在test方法中定义的局部变量,只能在test方法中使用
		print("-----%s-----" % A.name)
		print("-----%s-----" % self.name)

运行结果

A().test()
uu-dd-sdd
uu 36713280–dd 38691928–sdd 38691984-------in test_1-----
-----uu-----
-----sdd-----

个人练习的一些记录以备查阅

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值