一、特殊方法定制类,看一个程序吧:
class RoundFloatManual(object):
def __init__(self, val):
assert isinstance(val, float),"Value must be a float!"
self.value = round(val, 2)
def __str__(self):
return '%.2f' % self.value
__repr__ = __str__
>>> r = RoundFloatManual(5.568)
>>> r
5.57
加法:
>>> class Time60(object):
def __init__(self, hr, min):
self.hr = hr
self.min = min
def __repr__(self):
return '%d:%d' % (self.hr, self.min)
def __add__(self, other):
return self.__class__(self.hr + other.hr, self.min + other.min)
>>> a = Time60(10, 30)
>>> b = Time60(5, 20)
>>> a + b
15:50
原位加:
class Time60(object):
def __init__(self, hr, min):
self.hr = hr
self.min = min
def __repr__(self):
return '%d:%d' % (self.hr, self.min)
def __add__(self, other):
return self.__class__(self.hr + other.hr, self.min + other.min)
def __iadd__(self, other):
self.hr += other.hr
self.min += other.min
return self
>>> a = Time60(10, 30)
>>> b = Time60(5, 20)
>>> a += b
>>> a
15:50
与上面一样,当使用到“+”加好的时候,就去自动调用__add__方法,使用到“+=”的时候就去调用__iadd__()方法。
迭代器
>>> from random import choice
>>> class RandSeq(object):
def __init__(self, seq):
self.data = seq
def __iter__(self):
return self
def next(self):
return choice(self.data)
>>> for eachItem in RandSeq(('rock', 'paper', 'scissors')):
print eachItem
scissors
rock
paper
paper
rock
paper
……
二、关于单双下划线开头的方法名
Python 用下划线作为变量前缀和后缀指定特殊变量。
_xxx 不能用'from module import *'导入
__xxx__ 系统定义名字
__xxx 类中的私有变量名
核心风格:避免用下划线作为变量名的开始。
参考http://saber7.iteye.com/blog/835141
未完……
分享到:
相关推荐
Python学习心得&总结.doc
selenium python API分类总结.pdf
python总结。
我初步总结一下关于python类和对象常用的它们的一些语法。
15天精通Python-Python总结-Python基础-pyhthon小代码 Python总结 引言 语言分类 机器语言—汇编语言—高级语言(C语言—java/python)--php/perl/ruby C语言—面向过程 Java/python—面向对象 Python 是面向过程、...
·语句和语法——在python中输入代码来建立并处理对象,以及python一般的语法模型。 ·函数——python基本的面向过程工具,用于组织代码和重用。.. ·模块——封装语句、函数以及其他工具,从而可以组织成较大的组件...
python的re模块总结全文共4页,当前为第1页。python的re模块总结全文共4页,当前为第1页。Python之re模块 python的re模块总结全文共4页,当前为第1页。 python的re模块总结全文共4页,当前为第1页。 Python用" \\\\...
人工智能-项目实践-鸢尾花分类-Python 基于BP神经网络实现鸢尾花的分类 本文用Python实现了BP神经网络分类算法,根据鸢尾花的4个特征,实现3种鸢尾花的分类。 算法参考文章:纯Python实现鸢尾属植物数据集神经网络...
python 的类中主要会使用的两种变量:类变量与成员变量。类变量是类所有实例化对象共有的,而成员变量是每个实例化对象自身特有的。下面这篇文章主要给大家介绍了在python中类变量与成员变量的一些使用注意点,需要的...
PyQt是Qt的python接口,PyQt的文档较少,但接口和函数可以完全参照Qt,继承了Qt中大量的控件以及信号机制,十分方便。以下简介一个基本的PyQt程序。 – 需要导入的类主要来自三个包 – from PyQt5.QtWidgets import...
Python语法总结,语法学习讲义和笔记。 部分目录: 1. Python 3 1.1. 数据类型: 3 1.1.1. 整数,浮点数,字符串,布尔值(True、False),空值(None) 3 1.1.2. 数据类型list——数组: 3 1.1.3. tuple——常值...
python相关知识点,包括数据类型,语法,常用函数,类等,都是基础知识,学习过程积累的,也包括网上收集的。
基于知识图谱的智能问答系统python实现(复旦大学论文基于qa语料和知识库的问答系统)_python 智能问答,python 智能问答系统-机器学习代码类资源本代码实现是基于python实现的基于复旦大学崔万云博士的learing ...
python装饰器是一个用于封装函数、...本文首先探讨了实现装饰方法的类装饰器应具有的基本结构,接着对通用的两种编码模型进行了语法和流程的深入分析,并总结了各自的特点,为编写类装饰器装饰方法提供扎实的理论基础。
Python 中的 Socket 编程 说明 译者注 授权 开始 Socket API 概览 TCP Sockets 客户端 / 服务器echo 程序 echo 程序的服务端 echo 程序的客户端 运行echo 程序的客户端和服务端 查看 socket 状态 通信流程的分解 ...
清华大学精品Python学习PPT课件-第8章 Python类和对象.pptx 清华大学精品Python学习PPT课件-第9章 Python异常.pptx 清华大学精品Python学习PPT课件-第10章 Python文件操作.pptx 清华大学精品Python学习PPT课件-第11...
├─(2) 02 python s3 day41 JS的基础规范.avi ├─(3) 03 python s3 day41 JS的基本数据类型.avi ├─(4) 04 python s3 day41 JS的运算符.avi ├─(5) 05 python s3 day41 JS的控制语句与循环.avi ├─(6) 06 ...
2. 数据结构:Python 中的列表、元组、字典、集合等数据结构的使用和操作。 3. 函数和模块:定义和调用函数,创建和使用模块,以及模块的导入和使用。 4. 文件操作:读取和写入文件,处理文件内容和路径,以及异常...
自己对python类package几种安装方法总结:手动、自动、在线、离线方式。并配有比较详细直观的实例操作步骤说明。