练习33(面向对象的类名、对象的使用)

练习33

# s1 = 'safsdfsdf'
#
# def my_len(argv):
# 	count = 0
# 	for i in argv:
# 		count += 1
# 	return count
#
# print(my_len(s1))

# 结构上理解: 面向对象: 俩部分
# class A:
# 	name = 'alex' # 第一部分: 静态属性、静态变量、静态字段
#
# 	def func1(self): # 第二部分:函数、动态属性、方法
# 		pass

# 函数 VS 面向对象

# def register(argv):
# 	pass
#
# def login(argv):
# 	pass
#
# def shopping_car(argv):
# 	pass
#
#
# class Shopping_Car:
# 	def __init__(self): # 特殊方法
# 		pass
#
# 	def register(self):
# 		pass
#
# 	def login(self):
# 		pass
#
# 	def shopping_car(self):
# 		pass

# 1、函数封装一个功能,而面向对象封装多个相关的功能
# 2、面向对象抽象,它是一种思想,站在上帝的角度取理解它
# 3、程序可扩展,对象都是一个独立的。耦合性、差异性


# 类,对象
# 类: 具有相同属性或功能一类实物。
# 对象: 对象是类的具体体现

# 一个公共框架,一个公共模型
# class Person:
# 	animal = '高级动物'
# 	walk_way = '直立行走'
# 	language = '语言'
#
# 	def eat(self):
# 		print('该吃吃,该喝喝,啥事儿别往心里搁')
#
# 	def work(self):
# 		print('人类都需要工作')

# 类名
# 1. 查看类中所有属性及方法__dict__
# print(Person.__dict__)
# print(Person.__dict__['animal']) # 通过__dict__方式 单独的属性及方法可以查,但是不能增删改
# Person.__dict__['animal'] = '低级动物'
# Person.__dict__['name'] = 'alex'
# print(Person.__dict__)
# 工作中、学习中一般用到 __dict__查看类中的所有属性及方法,不进行其他操作
# 2. 查看(增删改)类中某个、某些属性 用万能的.
# print(Person.animal) # 查
# print(Person.language)
# Person.name = 'alex' # 增
# print(Person.name)
# Person.animal = '低级动物' # 改
# del Person.walk_way # 删
# print(Person.__dict__)
# 3. 操作方法 一般不通过类名操作
# Person.__dict__['work'](1) # 不建议通过__dict__执行方法
# Person.work(666)

# 对象
'''
class Person:
	animal = '高级动物'
	walk_way = '直立行走'
	language = '语言'

	def __init__(self,name,age,eye): # 功能: 给对象封装属性的
		self.name1 = name
		self.age1 = age
		self.eye1 = eye

	def eat(self):
		# print(self)
		print('该吃吃,该喝喝,啥事儿别往心里搁')

	def work(self):
		print('人类都需要工作')

'''
# obj = Person('alex', 1000, '小眼睛') # 这个过程是一个实例化过程,它会实例化一个对象(他会在内存实例化一个对象空间)
# print(obj)
# print(obj.name1)
# 实例化过程内部进行了三个阶段:
# 1. 在内存中开辟了一个对象空间
# 2. 自动执行类中的__init__方法,并且将对象空间自动传给self参数,其他参数手动传入
# 3. 执行__init__方法 给对象空间封装相应的属性
# obj = Person('alex', 1000, '小眼睛')
# 对象
	# 对象操作对象空间
		# 对象查看对象空间的属性 __dict__
# print(obj.__dict__)
		# 对象操作对象的某个属性 增删改查 万能的.
# obj.sex = '男' # 增
# del obj.eye1 # 删
# obj.eye1 = '大一点'
# print(obj.name1)
# print(obj.__dict__)
	# 对象操作类空间的属性 只能查
# print(obj.animal)
# obj.animal = '低级动物'
# print(obj.animal)
# print(obj.__dict__)
# print(Person.__dict__)
	# 对象操作类空间的方法
# print(obj)
# obj.eat()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值