【Python】面向对象魔法方法案例

a.定义一个Star类(明星类),包含初始化init方法:

成员属性:明星姓名

​ 明星的电影

成员方法:playing()

​ 打印:“xxx出演了yyy,非常好看”

打印对象时显示“xxx是我的偶像,我非常喜欢他的电影yyy”

删除对象提示“xxx我不再喜欢了”

xxx为明星姓名,yyy是电影的名字

b.键盘循环输入五个Star对象的姓名和电影名。

c.分别调用输入Star对象的playing方法和打印对象

请输入你喜欢的明星:周星驰
请输入电影名功夫
请输入你喜欢的明星:刘德华
请输入电影名狄仁杰
请输入你喜欢的明星:周润发
请输入电影名赌神
周星驰出演了功夫,非常好看
周星驰是我的偶像,我非常喜欢他的电影功夫
刘德华出演了狄仁杰,非常好看
刘德华是我的偶像,我非常喜欢他的电影狄仁杰
周润发出演了赌神,非常好看
周润发是我的偶像,我非常喜欢他的电影赌神
我不喜欢周星驰了
我不喜欢刘德华了
我不喜欢周润发了

class Star():
def init(self,name,movie):
self.name = name
self.movie =movie

def playing(self):
    print(f'{self.name}出演了{self.movie},非常好看')

def __str__(self):
    return f"{self.name}是我的偶像,我非常喜欢他的电影{self.movie}"

def __del__(self):
    print(f"我不喜欢{self.name}了")

movie_list = []
for i in range(3):
name = input(‘请输入你喜欢的明星:’)
movie = input(“请输入电影名”)
star = Star(name,movie)
movie_list.append(star)

for i in movie_list:
i.playing()
print(i)

“注释:
del 在对象的引用为零时调用

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值