我的Python学习笔记(四):动态添加属性和方法

一、动态语言与静态语言 1.1 动态语言

在运行时代码可以根据某些条件改变自身结构

可以在运行时引进新的函数、对象、甚至代码,可以删除已有的函数等其他结构上的变化

常见的动态语言:Object-C、C#、JavaScript、PHP、Python、Erlang

1.2 动态类型语言

在运行期间检查数据类型的语言

数据类型不是在编译阶段决定的,而是把类型绑定延后到了运行阶段

常见的动态类型语言:Python、Ruby、Erlang、JavaScript、swift、PHP、Perl

1.3 强类型语言

一旦一个变量被指定了某个数据类型,如果不经过强制类型转换,那么它就永远是这个数据类型

常见的强类型语言:Java、C#、Python、Object-C、Ruby

Python是动态语言,动态类型语言,也是强类型语言。所以Python可以在运行时改变自身结构,动态添加/删除属性方法。接下来将介绍Python如何动态添加属性方法

 

二、动态添加属性 2.1 添加对象属性

class Person(object): def __init__(self, newName, newAge): self.name = newName self.age = newAge zhangsan = Person("张三", 18) zhangsan.addr = "北京" # 类对象zhangsan动态添加对象属性addr print(zhangsan.name) # 张三 print(zhangsan.age) # 18 print(zhangsan.addr) # 北京 lisi = Person("李四", 28) print(lisi.name) # 李四 print(lisi.age) # 28 print(lisi.addr) # 'Person' object has no attribute 'addr'

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpggxd.html