python 成员
一.成员
1.实例变量 对象.属性=xxxx
class Person:
def __init__(self,name,id,gender,birth):
self.name = name
self.id = id
self.gender = gender
self.birth = birth p = Person('哈哈','','不详','1990-12-15')
print(p.birth) #p.birth就是实例变量
2.类变量 最好用类.变量 ,对象.变量也能用
class Person: country = '大清' 类变量 def __init__(self,name,gender):
self.name = name
self.gender = gender r = Person('张三','男')
r1 = Person('李四', '女') print(r.name)
print(r.gender)
print(r.country) 对象.类变量
print(Person.country) 类.类变量
3.实例方法
class Computer: # 实例方法
def play(self):
print('电脑可以扫雷') # 在定义实例方法的时候. 必须给出一个参数self
# 形参的第一个参数, 自动的把对象给传递进来
def work(self):
# print(self)
print('电脑用来工作') c = Computer()
c.work() # 调用的时候不需要手动给出self
4.类方法
class Preson: # 实例方法
def chi(self):
print('人会吃')
@classmethod # 装饰器. 此时这个方法是一个类方法
def he(cls): # 此时接受到的cls是类名
print('人会喝') # 用对象访问
p = Preson()
p.he() # 在调用类方法的时候. 默认的把类名传递给类方法 # 类方法一般用类名去访问
Preson.he()
5.静态方法
class Person: @staticmethod
def yue():
print('看见我就是静态方法') # 静态方法可以使用对象访问. 也可以使用类名访问. 但是一般推荐使用类名访问
p = Person()
p.yue() # 推荐使用类名访问
Person.yue()
6.属性
class Preson:
def __init__(self,name,gender,birth):
self.name = name
self.gender = gender
self.birth = birth # 年龄 -> 应该是算出来的. 而不是直接存储的
@property # 把一个方法更改成一个属性, 每次拿属性的时候会自动的去执行这个风法
# 方法的返回值就是属性值
def age(self):
return 2018-self.birth p1 = Preson('wusir','未知',2000)
print(p1.age) # 看着像一个变量一样使用. 实际上这里是调用的一个方法
print(p1.age) # p1.age = 26 # 不可以赋值, 因为age是一个方法不是变量 方法不能进行赋值操作
7.私有
class Person: _qie = '潘潘' # 类变量 def __init__(self,name,mini):
self.name = name
self._mini =mini # 私有内容 实例变量 def gaosu(self):
print(f"把秘密告诉了太白, 第二天所有人都知道了{self._mini}")
# print(Person.__qie) # 私有的类变量只能在类中调用 def __yue(self): # 私有的实例方法
print('我要和宝宝约') p = Person('wusir','和嫂子的故事')
# print(p.__mimi) # 私有的内容只能在类里面调用
p.gaosu()
python 成员的更多相关文章
- Python成员运算符
Python成员运算符 其他语言没有,是否包含运算符,主要应用在字符串或者集合中 测试实例中包含了一系列的成员,包括字符串,列表或元组. #使用场景01:字符串是否包含另外一个字符串? str01 = ...
- 由 '' in 'abc' return True 引发的思考----Python 成员测试操作
最近遇到判断字典中是否存在空字符串‘’,这个很好判断,直接用:‘’ in ['a','b','c'],就可以直接判断出来:但是当我对字符串使用 “in” 方法进行判断的时候,发现:‘’ in ‘abc ...
- Python成员运算,身份运算和流程控制
成员运算 in #判断--在--里面 print('a' in 'abcd') # 字符串判断a是否在abcd里面 print('you' in 'how are you') # 这种整体也可以判断 ...
- Python——成员变量
一.类变量 在类命名空间内定义的变量就属于类变量,python允许使用类来修改.读取类变量. 例: class a: b = '我是类变量' def c(self): print (a.b) # 通过 ...
- python - 类成员修饰符
在java,c#类的成员修饰符包括,公有.私有.程序集可用的.受保护的. 对于python来说,只有两个成员修饰符:公有成员,私有成员 成员修饰符是来修饰谁呢?当然是修饰成员了.那么python类的成 ...
- Python学习:17.Python面向对象(四、属性(特性),成员修饰符,类的特殊成员)
一.属性(特性) 普通方法去执行的时候,后面需要加括号,特性方法执行的时候和静态字段一样不需要不需要加括号. 特性方法不和字段同名. 特性方法不能传参数. 在我们定义数据库字段类的时候,往往需要对其中 ...
- python基础之运算符
算术运算符 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 31 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -11 * 乘 - 两个数相乘或是返回一个被重复 ...
- Python 面向对象 中高级
类成员: #字段 普通字段 属于对象 执行只能通过对象访问 静态字段 属于类 执行 既可以通过对象访问,也可以通过类访问 class Foo: def __init__(self,name): # 字 ...
- Python全栈开发day9
一.面向对象进阶 1.利用python反射查看面向对象成员 对于对象:反射既可以找对象,类的成员 对于类:反射只能找类中的成员 2.利用反射操作模块(查找类,创建对象,查找对象中字段) 1 2 3 4 ...
随机推荐
- python利用paramiko执行服务器命令
话不多说直接上代码 封装连接 @staticmethod def connect(ip, server_user, server_port, server_path): ""&qu ...
- Django项目:CRM(客户关系管理系统)--24--16PerfectCRM实现King_admin日期过滤
登陆密码设置参考 http://www.cnblogs.com/ujq3/p/8553784.html list_filter = ('date','source','consultant','con ...
- TZ_14_Zuul网关_过滤器
1.Zuul作为网关的其中一个重要功能,就是实现请求的鉴权.而这个动作我们往往是通过Zuul提供的过滤器来实现的. 2.自定义过滤器实现用户登陆时需要携带一个Key才可以登陆,否则返回403 1> ...
- TZ_09_MyBatis的pageHelper
1.分页操作使用MyBatis的PageHelper 1>导入pageHelper的坐标 <dependency> <groupId>com.github.pagehel ...
- 工控安全入门(二)—— S7comm协议
在上一次的文章中我们介绍了施耐德公司的协议modbus,这次我们把目标转向私有协议,来看看另一家巨头西门子的S7comm.首先要说明,这篇文章中的内容有笔者自己的探索,有大佬们的成果,但由于S7com ...
- PuTTy linux下tomcat服务的相关命令
一:Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/loca ...
- Java基础-注解
什么是注解? Jdk1.5新增新技术,注解.很多框架为了简化代码,都会提供有些注解.可以理解为插件,是代码级别的插件,在类的方法上写:@XXX,就是在代码上插入了一个插件. 注解不会也不能影响代码的实 ...
- 洛谷 P1036 选数【背包型DFS/选or不选】
题目描述 已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n).从 n 个整数中任选 k 个整数相加,可分别得到一系列的和.例如当 n=4,k=3,4 个整数分别为 3,7,12, ...
- Hdu 4251 区间中位数(划分树)
题目链接 The Famous ICPC Team Again Time Limit: 30000/15000 MS (Java/Others) Memory Limit: 32768/3276 ...
- 互联网安全的必要性:CSDN用户信息泄露案告破
本报讯 昨天,记者从北京警方获悉,历时40多天的侦查,轰动互联网的“CSDN网站用户信息泄露案”告破,涉案嫌疑人已被刑拘.由于保密措施不力,北京警方还向CSDN网站开出我国落实信息安全等级保护制度以来 ...