最新要闻
- 世界热门:电竞圈说的“满血”到底是啥 真能带来游戏体验升级?实测揭秘真相
- 女子花2700修热水器:成本只有13元
- 当前速读:今天是卢伟冰入职小米4周年!卢伟冰想起4年前雷军说过的话
- 取暖电器火了!成为老外眼中的香饽饽
- 天天看点:根治安卓卡顿!一加11超21万人预约:本周发
- 蔚来2022年累计交付新车122486辆 明年目标超雷克萨斯
- 速讯:微软吹大了!Win11流畅度没那么神:Office/PS还没Win10快
- 实时焦点:女子跨年夜捡烟花废品赚552元 一晚上捡了920斤:网友叹服人勤劳怎么都赚钱
- 2023油价新年第一涨来了:我国汽油全面进入国六B时代 油品质量不缩水
- 全球微动态丨2022年第一票房是《壮志凌云2》 阿汤哥驾F14胜5代战机的爽片赢下全球影迷
- 【天天新要闻】Redmi 12C只卖699元:但支持双频WiFi 还有3.5mm耳机孔和TF卡槽
- 当前信息:三亚近期酒店房间几乎售罄:飞机上坐满了人
- 世界通讯!摄影师对小米13 Pro长焦刮目相看:原本不抱希望 但实际效果令人意外
- 世界消息!一加11本周发!李杰:一部你越用越爱、越用越惊喜的手机
- 实时焦点:甘肃省高速公路实施差异化收费 绿牌新能源最高能省50%过路费
- 焦点短讯!女子接触发霉玉米肺里长黄曲霉菌 没戴口罩防护:医生科普毒性超强
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Python类的封装教程
一、什么是封装
封装的本身意思其实就和闭包函数一样,就是把一个函数和变量全都包在一起,但其实这样的说法不是很具体,就是一种很片面的解释
(资料图)
二、为什么要封装
封装数据的主要原因是:保护隐私
封装方法的主要原因是:隔离复杂度(快门就是傻瓜相机为傻瓜们提供的方法,该方法将内部复杂的照相功能都隐藏起来了,只提供了一个快门键,就可以直接拍照)
提示:在编程语言里,对外提供的接口(接口可理解为了一个入口),就是函数,称为接口函数,这与接口的概念还不一样,接口代表一组接口函数的集合体。
三、如何封装
1.在类里面封装其实就是:
- 隐藏属性:通过 __变量名来隐藏
- 隐藏方法:通过 __方法名来隐藏
2.隐藏属性:是为了数据的安全
- 隐藏nmae属性的例子
class Person: def __init__(self,name,age): self.__name=name self.age=agep=Person("xichen",18)print(p.age)# 这个时候我们实例化出来的对象是访问不到类init里的__name属性的,
如何访问被隐藏的属性
通过在列里面写一个访问被隐藏的属性的接口
class Person: def __init__(self,name,age): self.__name=name self.age=age def get_name(self): # print(self.__name) return "[----%s-----]"%self.__namep=Person("xichen",18)print(p.age)
p=Person("xichen",18)print(p.get_name())
通过对象名._类名_被隐藏的属性名
print(p._Person__name)
3.隐藏方法:为了隔离复杂度
在继承中,父类如果不想让子类覆盖自己的方法,可以将方法定义为私有的
方法的隐藏和属性的隐藏式一样的
这里的隐藏的方法不想我们的隐藏的属性一样可以有方法去用,隐藏的方法是用不了的
class Person: def __init__(self,name,age): self.__name=name self.__age=age def __speak(self): print("6666")
四、property装饰器
1 property装饰器有什么用
它可以把方法包装成数据属性
class Person: def __init__(self,name,height,weight): self.name=name self.height=height self.weight=weight @property# 使用语法糖的方式 通过property装饰器进行装饰 def bmi(self): return self.weight/(self.height**2) p=Person("xc",1.82,75)print(p.bmi)# 使用查看对象属性的方式 查看方法的返回值# print(p.bmi())# 错误的使用方法# p.bmi = 123 # 只能查看,不能进行修改
22.6421929718633
2 property之setter和deleter
使用property装饰器将方法包装成数据属性后,是无法进行修改的
只要通过property装饰器中的方法 .setter,这样就可以修改了
#Python交流学习Q群:711312441class Person: def __init__(self,name,height,weight): self.__name=name self.__height=height self.__weight=weight @property def name(self): return "[我的名字是:%s]"%self.__name #用property装饰的方法名.setter,这样就可以修改了 @name.setter def name(self,new_name): # if not isinstance(new_name,str): if type(new_name) is not str: raise Exception("改不了") if new_name.startswith("sb"): raise Exception("不能以sb开头") self.__name=new_name p=Person("xc",1.82,70)# 按照属性进行调用print(p.name)# 调用property装饰器后的方法 name,变为一个属性# 按照属性进行调用,并修改p.name="pppp"# 调用property.setter装饰器后的方法,可以进行修改# 改不了,直接抛异常# p.name=999# p.name="sb_xxx"
只要通过property装饰器中的方法 .deleter,就可以删除了
一般没有这个需求。
class Person: def __init__(self, name, height, weight): self.__name = name self.__height = height self.__weight = weight @property def name(self): return "[我的名字是:%s]" % self.__name # 用property装饰的方法名.setter,这样就可以修改了 @name.setter def name(self, new_name): # if not isinstance(new_name,str): if type(new_name) is not str: raise Exception("改不了") if new_name.startswith("sb"): raise Exception("不能以sb开头") self.__name = new_namep = Person("xc", 1.82, 70)# python学习交流群:711312441# 按照属性进行调用print(p.name) # 调用property装饰器后的方法 name,变为一个属性# 按照属性进行调用,并修改p.name = "pppp" # 调用property.setter装饰器后的方法,可以进行修改# 改不了,直接抛一异常# p.name=999# p.name="sb_xxx"# 删除name,会调用property.deleter装饰的方法del p.name
-
docker复杂安装
安装mysql主从复制1、新建主服务器容器实例3307dockerrun-d-p3307:3306--namemysql-master-v mydata mysql-master lo
来源: Python类的封装教程
世界热门:电竞圈说的“满血”到底是啥 真能带来游戏体验升级?实测揭秘真相
女子花2700修热水器:成本只有13元
docker复杂安装
热点在线丨AcWing1170. 排队布局[USACO05]
当前速读:今天是卢伟冰入职小米4周年!卢伟冰想起4年前雷军说过的话
取暖电器火了!成为老外眼中的香饽饽
看点:docker安装软件
天天看点:根治安卓卡顿!一加11超21万人预约:本周发
蔚来2022年累计交付新车122486辆 明年目标超雷克萨斯
速讯:微软吹大了!Win11流畅度没那么神:Office/PS还没Win10快
实时焦点:女子跨年夜捡烟花废品赚552元 一晚上捡了920斤:网友叹服人勤劳怎么都赚钱
2023油价新年第一涨来了:我国汽油全面进入国六B时代 油品质量不缩水
全球微动态丨2022年第一票房是《壮志凌云2》 阿汤哥驾F14胜5代战机的爽片赢下全球影迷
全球播报:JDBC
Maven基础
【天天新要闻】Redmi 12C只卖699元:但支持双频WiFi 还有3.5mm耳机孔和TF卡槽
当前信息:三亚近期酒店房间几乎售罄:飞机上坐满了人
世界通讯!摄影师对小米13 Pro长焦刮目相看:原本不抱希望 但实际效果令人意外
世界消息!一加11本周发!李杰:一部你越用越爱、越用越惊喜的手机
实时焦点:甘肃省高速公路实施差异化收费 绿牌新能源最高能省50%过路费
焦点短讯!女子接触发霉玉米肺里长黄曲霉菌 没戴口罩防护:医生科普毒性超强
特斯拉美国遭起诉:违反劳动法
焦点简讯:1TB+ SSD固态盘继续便宜 用户消费不动:微软背锅
当前快讯:东北500米超长冰滑梯走红!世界最长“出溜滑”:1秒10米风驰电掣
动态焦点:一招轻松解决node内存溢出问题
环球视讯!2020年“老卡”姗姗来迟:映泰突然推出RTX 3080/3070非公显卡
世界聚焦:PG认证的注意事项 (这很重要!)
【全球聚看点】《原神》赚麻了!推出2年移动端收入超过275亿元
视讯!3人同时订酒店价格相差1倍 去哪儿回应:正常 因素有很多
观天下!Django中间件
环球看点!造车新势力第一!2022年埃安累计销量27.1万辆 明年冲击60万辆
热头条丨Django组件之form组件
全球观察:索尼音乐在B站传了17万个视频 网友:当免费服务器了
当前时讯:比亚迪技术加持 创维汽车2022年总销量21916台 暴增255.72%
天天日报丨复兴号新动车元旦首秀:红白灰绿四色机身成“网红”车型
N95有效防护时间为4到6小时:和戴普通口罩效果有什么区别?
Django组件之Ajax请求
视焦点讯!RTX 4070 Ti完整规格、性能曝光:4090一半性能、一半的价格
新年快乐!今天遇到一个问题:3个鸡蛋5元,6个鸡蛋多少钱?
iPhone 15 mini重出江湖?苹果把这几个功能加上卖爆
世界热文:蒙脱石散为啥突然火了?医生提醒:不要乱用 小心便秘
今日快讯:关于使用boto3方式获取AWS-所有EC2-机型及属性时所遇到的结果返回不全的坑点及使用分布机制的解决方法
世界快讯:web项目开发---第三天
环球关注:1月4日发布!一加11官宣搭载双环式对磁扬声器:支持杜比全景声
世界讯息:新能源补贴正式终止!小鹏宣布:2023年各车型售价与补贴后一致
MAUI新生6.6-搜索栏SearchHandler
今日热搜:岚图汽车12月交付1729辆 大增14.7%!全年累计交付19409辆
每日焦点!得到跨年演讲2023
环球微速讯:《阿凡达2》成第100部内地票房破10亿电影:当年《阿凡达1》是第1部
Django模板层
今日看点:外观帅炸了!阿富汗首款国产跑车随风雪亮相喀布尔
《王者荣耀》盘古即将获得品质升级:上手难度大幅下降
每日短讯:跨年夜无人机被气球缠绕坠落人群 引发一阵惊呼
【世界热闻】从系统整体观思考系统构建
大年初一上映!《流浪地球2》微笑海报发布:主创全员出镜
2023全年油价调整时间表出炉:1月3日第一调 要涨
AcWing362. 区间
最新消息:你看过几场?2022年国内电影总票房超300亿
即时焦点:必囤:百草味年货坚果大礼包1370g/8袋仅49元
微速讯:特斯拉拼了:其他品牌车辆置换特斯拉 3.2万元功能免费用90天
全球首架国产大飞机C919新年首飞:验证飞行将达100小时
每日快看:全球最大第三方Android系统!基于Android 13的LineageOS 20正式发布
全球今头条!联想新款迷你主机M60Q官宣:厚度仅3.4厘米 可选12代i5
当前简讯:2023大事前瞻:杭州亚运会9月举办 首次纳入电竞比赛项目
热头条丨日本外卖小哥晒收入:月入合人民币5.5万元
观察:MYSQL安装教程及sqlyog初次使用
全球焦点!80秒看全球跨年烟火秀:用璀璨夜空迎接2023 你那能放烟花吗
【天天热闻】中国汽车保有量超3亿辆 千人拥有量达220辆 已成普通家庭消费品
搜索页上全是广告和推荐?用这插件一键去除
播报:新规即日起开始执行!手机预装App终于可以卸载了
苹果4GB内存为何能击败安卓12GB?历代iPhone内存容量公布:最大不过6GB
每日热议!铁路新规今日起施行:实名制儿童火车票将按照年龄购买 不看身高
焦点热讯:MAUI新生6.5-导航路由Navigation
每日资讯:Intel带着56核心再次发烧!新座驾降临 能插16条内存
环球头条:大批192号段诈骗电话出现!中国广电发布提醒:电商客服不会用192
热文:一项大奖的所有得主:都没有后代 为什么呢?
动态焦点:SpaceX预告2023年第一发:一箭114星!超越印度新纪录
要再见了!《魔兽世界》临时充值渠道将于1月1日0点正式关闭
詹姆斯生日夜狂砍47分!杜兰特盛赞其表现:神迹!
第119篇: JavaScript 类
天天速递!仅仅10年 中国在西部修了2.5万公里铁路
【天天聚看点】直播央视2023跨年晚会:明星阵容豪华、两大运动员登台
3999元 LG新款27英寸显示器开售:搭载4K Nano IPS Black屏
2423公里!曾经的中国西部最长铁路 开通60年了
焦点热门:妈妈给儿子读英语 发音如原声磁带!6岁孩子开口惊人
玩家吐槽《塞尔达传说:王国之泪》NS限定机太丑:希望不是真的
报道:屏幕碾压iPhone 14 Pro!红魔8 Pro系列20点开售:3999元起
今日快看!男子上公厕10分钟门自动打开:装了定时器 网友吐槽不合理
36个月流畅不卡顿!卢伟冰:Redmi 12C满足低预算人群核心需求
手工耿又出大作 自制小黄人悬空火炉 网友:有用、想要
世界微资讯!AcWing 1359. 洛谷P1457 城堡
LaTeX快速入门
【天天聚看点】早餐来一盒 伊利高端品牌金典纯牛奶24盒到手76元
世界报道:28年再温经典!周星驰电影《大话西游》元旦抖音全网独播
当前热讯:Python类的多态和多态性
当前观点:红绿灯倒计时覆盖量破百万 百度地图:全国3000县市只差1个没有
世界新消息丨“流氓软件”拜拜!手机预装App终于要能卸载了:新规明天执行
长城大气!魏牌官宣:国补取消后插混车型不涨价
马斯克疯狂省钱:断供厕纸、辞退保洁、退租办公室