学习python类方法与对象方法

yipeiwu_com6年前Python基础

本文实例针对python的类方法与对象方法进行学习研究,具体内容如下

class Test_Demo:
  TEST = 'test_value'

  def __init__(self,name,age):
    self.name = name
    self.age = age
  #static method
  @staticmethod
  def test_static():
    return Test_Demo.TEST
  #特性
  @property
  def test_property(self):
    return self.name+':'+str(self.age)
  #类方法
  @classmethod
  def test_class(self):
    return self.TEST

if __name__ == '__main__':
  test_demo = Test_Demo('zj',23)
  #print(test_demo.name)
  print(Test_Demo.test_static())
  print(test_demo.test_property)
  print(test_demo.test_class())

输出结果:

注:与php不同的是:

 类方法和静态方法可以访问类的静态变量(类变量,TEST),但都不能访问实例变量(即name,age)

 如果访问了就会报错:

以上就是本文的全部内容吗,希望对大家的学习有所帮助。

相关文章

新手如何发布Python项目开源包过程详解

新手如何发布Python项目开源包过程详解

本文假设你在 GitHub 上已经有一个想要打包和发布的项目。 第 0 步:获取项目许可证 在做其他事之前,由于你的项目要开源,因此应该有一个许可证。获取哪种许可证取决于项目包的使用方式...

Python写的创建文件夹自定义函数mkdir()

Python对文件的操作还算是方便的,只需要包含os模块进来,使用相关函数即可实现目录的创建。 主要涉及到三个函数: 1、os.path.exists(path) 判断一个目录是否存在...

Python中asyncio模块的深入讲解

1. 概述 Python中 asyncio 模块内置了对异步IO的支持,用于处理异步IO;是Python 3.4版本引入的标准库。 asyncio 的编程模型就是一个消息循环。我们从...

Python cookbook(数据结构与算法)对切片命名清除索引的方法

本文实例讲述了Python对切片命名清除索引的方法。分享给大家供大家参考,具体如下: 问题:如何清理掉到处都是硬编码的切片索引 解决方案:对切片命名 假设有一些代码用来从字符串的固定位置...

详解duck typing鸭子类型程序设计与Python的实现示例

在程序设计中,鸭子类型(英语:duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。 这个...