重新学习python类
之前觉得有java和c++的底子,对python的类没有认真研习,后面到了写项目的时候各种懵逼。终于决定彻底解决python的类问题。
一、python的类定义:
class cls_name:
def __new__(cls,*args,**kvargs):
pass
def __init__(self,*args,**kvargs):
pass
二、类的属性:
分三种:
(1)内置属性:
__name__ -> class-name
__doc__ -> class-descript
__bases__ -> tuple-for-father-class
__dict__ ->dictionary-for-class-culnom
__moudle__ ->class-moudle
__class__ ->class-object-type
(2)普通属性:
xxx -> xxxx
(3)隐藏属性:
全隐藏属性,_xxx 不会引入,不能访问(模块级别就是脚本文件级别,不会被import 引入)
半隐藏属性,__XX 访问 object_name._class-name__XX 类隐藏
三、类的__new__ , __init__:
继承新类object的类,和继承基础数据类型的类有__new__函数
注明:super函数的使用super(classname,self/cls).__init/new__(self/cls)
class A(object):
def __new__(cls,value):
cls.para = value
return super(A,cls).__new__(cls)#必然存在类继承
def __init__(self,value):
self.para = value
四、类的方法
(1)实例方法:
class A:
def show(self):
print "yes"
(2)类方法:
@classmethod修饰,可以访问类的属性,那些特殊属性,类可以访问,实例也可以访问。类访问-》classname.functionnane(*args,**kvargs)
class A:
@classmethod
def show(cls):
print cls.__doc__
(3)静态方法:
@staticmethod修饰 没有参数限制 self和cls都不是必须的,可以通过实例和类访问
class A:
count = 1
@staticmethod
def show():
print A.count
重新学习python类的更多相关文章
- 学习python类
类:Python 类提供了面向对象编程的所有基本特征: 允许多继承的类继承机制, 派生类可以重写它父类的任何方法, 一个方法可以调用父类中重名的方法. 对象可以包含任意数量和类型的数据成员. 作为模块 ...
- 学习Python类的心得
类的注意事项 1)命名规则 需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的, 是特殊变量,特殊变量是可以直接访问的,不是private变量, ...
- Python学习:类和实例
Python学习:类和实例 本文作者: 玄魂工作室--热热的蚂蚁 类,在学习面向对象我们可以把类当成一种规范,这个思想就我个人的体会,感觉很重要,除了封装的功能外,类作为一种规范,我们自己可以定制的规 ...
- python类学习以及mro--多继承属性查找机制
版权声明:本文为博主原创文章,未经博主允许不得转载. 还记得什么是新式类和旧式类吗? Python中,一个class继承于object,或其bases class里面任意一个继承于object,这个c ...
- 《python基础教程(第二版)》学习笔记 类和对象(第7章)
<python基础教程(第二版)>学习笔记 类和对象(第7章) 定义类class Person: def setName(self,name): self.name=n ...
- 零基础入门学习Python(36)--类和对象:给大家介绍对象
知识点 Python3 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前 ...
- Python 类学习的一些Tips
这里不详细介绍类,只总结一些小萌新在学习python 类时会有的一些疑点. 类的私有性 在python中,属性和方法的访问权限只有两种,公开的,和私有的.在给属性命名时用两个“__”下划线作为开头,就 ...
- python类,魔术方法等学习&&部分ssti常见操作知识点复习加深
python类学习&&部分ssti常见操作知识点复习加深 在做ssti的模块注入的时候经常觉得自己python基础的薄弱,来学习一下,其实还是要多练习多背. 在python中所有类默认 ...
- Python学习笔记之面向对象编程(三)Python类的魔术方法
python类中有一些方法前后都有两个下划线,这类函数统称为魔术方法.这些方法有特殊的用途,有的不需要我们自己定义,有的则通过一些简单的定义可以实现比较神奇的功能 我主要把它们分为三个部分,下文也是分 ...
随机推荐
- 02 Architecture Overview
本章提要---------------------------------------------arthiecture, and some componentconnect to oracle这一章 ...
- [从jQuery看JavaScript]-匿名函数与闭包
jQuery片段: (function(){ //这里忽略jQuery所有实现 })(); 半年前初次接触jQuery的时候,我也像其他人一样很兴奋地想看看源码是什么样的.然而,在看到源码的第一眼,我 ...
- glob函数 循环遍历子目录下的文件
<?php foreach (glob("ueditor\php\upload\image\*\*.png") as $filename) { echo "$fil ...
- Mastering the game of Go with deep neural networks and tree search浅析
Silver, David, et al. "Mastering the game of Go with deep neural networks and tree search." ...
- FFmpeg在Android上的移植优化步骤
http://blog.csdn.net/feixiang_john/article/details/7894188 从事多媒体软件开发的人几乎没有不知道FFmpeg的,很多视频播放器都是基于FFmp ...
- yuv420格式分析
http://blog.csdn.net/liuhongxiangm/article/details/9135791 http://blog.csdn.net/bluesky_sunshine/art ...
- Eclipse最经常使用快捷键总结
1. ctrl+shift+r:打开资源 这可能是全部快捷键组合中最省时间的了. 这组快捷键能够让你打开你的工作区中不论什么一个文件,而你仅仅须要按下文件名称或mask名中的前几个字母,比方appl ...
- 2014Esri全球用户大会之影像和栅格
1.现在Esri已将影像作为GIS解决方案的一部分,其详细战略部署是如何的? 在过去的十年.Esri有规划的在ArcGIS平台(主要为Desktop和Server)中管理和开发影像和栅格功能.这包含影 ...
- mysql 5.7 详细图文安装教程
官网下载太慢,可以上下载频道下载(mysql-installer-community-5.7.13.0.msi): http://download.csdn.net/download/tan3739/ ...
- window用Xmanager4.0的Xstart连接linux远程桌面
安装包: xorg-x11-xauth xterm.x86_64 0:253-1.el6 Execute command path:/usr/bin/xterm Xstart连接Linux远程桌面有一 ...