48 python - 保护对象属性
2023-09-11 14:15:43 时间
如果有一个对象,当需要对其进行修改属性时,有2种方法
- 对象名.属性名 = 数据 ---->直接修改
- 对象名.方法名() ---->间接修改
为了更好的保存属性安全,即不能随意修改,一般的处理方式为
- 将属性定义为私有属性
- 添加一个可以调用的方法,供调用
class People(object):
def __init__(self, name):
self.__name = name
def getName(self):
return self.__name
def setName(self, newName):
if len(newName) >= 5:
self.__name = newName
else:
print("error:名字长度需要大于或者等于5")
xiaoming = People("dongGe")
print(xiaoming.__name)
class People(object):
def __init__(self, name):
self.__name = name
def getName(self):
return self.__name
def setName(self, newName):
if len(newName) >= 5:
self.__name = newName
else:
print("error:名字长度需要大于或者等于5")
xiaoming = People("dongGe")
xiaoming.setName("wanger")
print(xiaoming.getName())
xiaoming.setName("lisi")
print(xiaoming.getName())
总结
- Python中没有像C++中public和private这些关键字来区别公有属性和私有属性
- 它是以属性命名方式来区分,如果在属性名前面加了2个下划线’__’,则表明该属性是私有属性,否则为公有属性(方法也是一样,方法名前面加了2个下划线的话表示该方法是私有的,否则为公有的)。
相关文章
- [Python]架设python虚拟环境以及部署PythonWeb服务
- 使用Python爬取网页的相关内容(图片,文字,链接等等)
- Python类属性的延迟计算
- 全面了解python中的类,对象,方法,属性
- python中字典转字符串单引号变双引号
- 全功能Python测试框架:pytest
- 【Python】python对象与json相互转换
- paip.判断文件是否存在uapi python php java c#
- Python之ffmpeg-python:ffmpeg-python库的简介、安装、使用方法之详细攻略
- Python编程语言学习:python编程语言中重要函数讲解之map函数等简介、使用方法之详细攻略
- Python:利用python编程将上海十六区,2020年5月份房价实时地图(数据来源房天下)进行柱状图、热图可视化
- Python编程语言学习:python语言中快速查询python自带模块&函数的用法及其属性方法、如何查询某个函数&关键词的用法、输出一个类或者实例化对象的所有属性和方法名之详细攻略
- Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Find/undo事件)
- Python:python代码编程带你玩转双色球(了解双色球的概率逻辑)
- Python编程语言学习:python的列表的特殊应用之一行命令实现if判断中的两类判断
- Python:利用python代码编程实现将视频的avi格式转换为MP4格式
- python --> Python初阶 --> 基础语法 --> 条件和分支
- 跟我学Python图像处理丨何为图像的灰度非线性变换
- Python 中更优雅的环境变量设置方案
- 【Python成长之路】python 基础篇 -- 装饰器【华为云分享】
- 不要逼自己学习 Excel 了,用 Python 实现 excel 的14个常用操作!
- Python 有哪些让你相见恨晚的技巧?
- 【项目实战】Python基于孤立森林算法(IsolationForest)实现数据异常值检测项目实战
- Python编程:exception异常处理
- Python编程:twine模块打包python项目上传pypi
- python web py入门(3)-模板
- python基础===使用switch方法,减少使用if语句
- Python服务Dokcer化并k8s部署实例
- Python kafka操作实例(kafka-python)
- 【异常】前端ERR! stack Error: Can‘t find Python executable “python“, you can set the PYTHON env variable.
- 〖Python全栈白宝书-免费版㉙〗- Python中的流程控制与条件判断
- Python少儿编程入门篇(7)for 循环语句