iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >property如何在python中使用
  • 184
分享到

property如何在python中使用

2023-06-14 10:06:48 184人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章给大家介绍property如何在python中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。什么是property装饰器顾名思义,这是一个装饰器,起到一个辅助作用,具体理解请看下面一个例子。我们知道,程序中

这篇文章给大家介绍property如何在python中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

什么是property装饰器

顾名思义,这是一个装饰器,起到一个辅助作用,具体理解请看下面一个例子。我们知道,程序中有许多变量都有范围的限制,比如年龄,工资,身高等不可能为负数。但是用户输入时,有时会不可避免地输入非法的值,如果我们的程序没有一个判断,那么极有可能导致整个程序崩溃!因此,我们常常会写一些set(),get()等函数来判断,但常常会过于麻烦,这时,便出现了property装饰器,它既有判断的功能,而且非常简洁。

set()和get()的使用

class A:  def set_age(self, age):    if 0 < age < 120:      self.age = age    else:      print("非法的年龄!默认为18")      self.age = 0  def get_age(self):    return self.agea = A()a.set_age(19)print(a.age)a.set_age(180)print(a.age)

结果如下:

19
非法的年龄!默认为18
0

不可否认,这样确实达到了我们想要的效果,事实上,Java语言就是这样实现的。但是Python具有更简洁的表达,就是property装饰器。

property装饰器的使用

class A:  @property  def age(self):    return self._age  @age.setter  def age(self, age):    if 0 < age < 120:      self._age = age    else:      self._age = 18      print("非法的年龄!默认为18")a = A()a.age = 19print(a.age)a.age = 180print(a.age)

这里的@property相当于get()方法,@age.setter相当于set()方法。

好处

property装饰器将set()和get()方法变成了属性!可以用 .age 来设置值,不需要用括号,方便更改。
2.增加了新的功能------只读,如果你只写@property而不写@age.setter,那么这个变量就是只读的,重新赋值则会报错。增加了程序的安全性。
3.注意到property修饰的是私有成员,而私有成员本来相对来说更安全一点,这体现了代码的一致性。

关于property如何在python中使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: property如何在python中使用

本文链接: https://www.lsjlt.com/news/269941.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • property如何在python中使用
    这篇文章给大家介绍property如何在python中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。什么是property装饰器顾名思义,这是一个装饰器,起到一个辅助作用,具体理解请看下面一个例子。我们知道,程序中...
    99+
    2023-06-14
  • property()函数如何在Python中使用
    这篇文章将为大家详细讲解有关 property()函数如何在Python中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python是什么意思Python是一种跨平台的、具有解释性、编译...
    99+
    2023-06-14
  • 如何在Python中使用@property装饰器
    这期内容当中小编将会给大家带来有关如何在Python中使用@property装饰器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、property() 函数讲解了解 @property 装饰器之前,我们...
    99+
    2023-06-15
  • python中@Property属性如何使用
    这篇文章主要介绍“python中@Property属性如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python中@Property属性如何使用”文章能帮助大家解决问题。一、前言本文介绍的属...
    99+
    2023-07-02
  • python中@property怎么使用
    本篇内容介绍了“python中@property怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.什么是property简单地说就是...
    99+
    2023-07-02
  • python使用@property @x
    @property可以将python定义的函数“当做”属性访问,从而提供更加友好访问方式,但是有时候setter/deleter也是需要的。 1》只...
    99+
    2023-01-31
    python property
  • 如何正确使用@property
    本篇内容主要讲解“如何正确使用@property”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何正确使用@property”吧!他们是这样说的:class People: ...
    99+
    2023-06-15
  • python中@Property属性使用方法
    目录一、前言二、创建用于计算的属性三、为属性添加安全保护机制一、前言 本文介绍的属性与类属性和实例属性不同。类属性和实例属性介绍的属性将返回所存储的值。而本文要介绍的属性是一种特殊的...
    99+
    2024-04-02
  • Python的@property的使用
    目录1、几个概念2、举个例子3、解决问题4、换个方法通常,当我们需要对对象的敏感属性或者不希望外部直接访问的属性进行私有化,但是某些时候我们又需要对这些私有属性进行修改,该怎么处理呢...
    99+
    2024-04-02
  • Python装饰器中@property使用详解
    目录最初的声明方式使用装饰器的声明方式使用装饰器的调用过程总结最初的声明方式 在没有@property修饰的情况下,需要分别声明get、set、delete函数,然后初始化prope...
    99+
    2024-04-02
  • Python中property标签属性怎么使用
    在Python中,可以使用@property装饰器来定义一个属性的getter方法,并使用@property.setter装饰器来定...
    99+
    2023-09-16
    Python
  • 如何在PHP8中使用Constructor Property Promotion简化数据库操作?
    如何在PHP8中使用Constructor Property Promotion简化数据库操作?PHP8作为最新版本的PHP,引入了许多新的特性和改进。其中之一是Constructor Property Promotion(构造函数属性晋级...
    99+
    2023-10-22
    PHP Constructor Property Promotion 简化数据库操作
  • python中property装饰器的使用方法
    这篇文章主要介绍python中property装饰器的使用方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和...
    99+
    2023-06-15
  • Python中关于property使用的小技巧
    目录property属性具体实例property属性的有两种方式装饰器方式旧式类新式类类属性方式property对象与@property装饰器对比property对象类属性@prop...
    99+
    2024-04-02
  • python @property 装饰器使用方法
    目录一、property的装饰器用法二、举例说明1.不用setter和getter方法的实现2.使用setter和getter的实现,增加温度值输入的限制3.利用property装饰...
    99+
    2024-04-02
  • 如何使用Logback设置property参数
    这篇文章主要讲解了“如何使用Logback设置property参数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Logback设置property参数”吧!Logback设置prop...
    99+
    2023-07-05
  • sympy如何在python中使用
    sympy如何在python中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyth...
    99+
    2023-06-14
  • Counter如何在python中使用
    Counter如何在python中使用?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端开发...
    99+
    2023-06-14
  • WSGI如何在Python中使用
    本篇文章为大家展示了WSGI如何在Python中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其...
    99+
    2023-06-14
  • 在python中如何使用input
    这篇文章将为大家详细讲解有关在python中如何使用input,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端开发,众多大...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作