Python -- Records项目学习
Records学习笔记
1. __getitem__(self, key) 内建方法(Build-in)
例子:
class Test(object):
def __getitem__(self, key):
print("test")
return 1
t = Test()
print(t["m"])
运行结果:
>>> hello
>>> 1
2. ___getattr__(self, name) 内建方法(Build-in)
该方法在未找到对象的属性值的时候调用.
例子:
class Test(object):
def __getattr__(self, name):
print("test")
return 1 t = Test()
print(t.m)
运行结果:
>>> hello
>>> 1
去掉__getattr__函数时,会提示没有m这个属性的错误。
3. @property 装饰器
用于将一个函数生产对应的getter函数
实例:
class Test(object):
@property
def name(self):
return self._name
@name.setter
def name(self, name):
self._name = name t = Test()
t.name = "hello"
print(t.name)
运行结果:
>>> hello
4. A if 条件 else B(语法)
print("") if __name__=='__main__' else print("")
5. __enter__和__exit__内建方法(Build-in)
用于with语句块,当进入with语句块的时候调用__enter__
当离开with语句块的时候调用__exit__
例子:
class test(object):
def __enter__(self):
print("enter")
return self
def __exit__(self, type, value, traceback):
print("out")
del self
with test() as m:
m.name = 1
print (m.name)
运行结果:
>>> enter
>>> 1
>>> out
6. __iter__(self) 迭代器(Build-in)
通过__iter__函数获得一个迭代器对象, 调用迭代器的next方法不断获得下一个值.
例子:
class test(object):
def __init__(self):
self.a = 1
self.b = 1
def __iter__(self):
return self
def __next__(self):
test = self.a + self.b
self.a, self.b = self.b, test
return self.a
def next(self):
return self.__next__ for i in test():
if i > 1000:
break
print(i)
Python -- Records项目学习的更多相关文章
- Python示例项目学习
原文地址:http://www.360doc.com/showweb/0/0/874025604.aspx 「 Python3 实现火车票查询工具 」 相信很多人学Python都是冲着它强大的爬虫 ...
- 教你阅读Python开源项目代码
为什么要阅读开源代码 阅读 Python 开源项目代码主要有如下三个原因: 在工作过程中遇到一些问题 Google 和 StackOverFlow 等网站找不到解决办法,只能去翻源码. 对某些项目或者 ...
- Pycharm+django新建Python Web项目
这两天初学Python,首先是学习Python语法有PyCharm就可以运行Console程序了,因为是初学所以,尽量写的比较详细,包括参考的资料地址... 1.下载Python,并安装[本文版本 ...
- 再一波Python实战项目列表
前言: 近几年Python可谓是大热啊,很多人都纷纷投入Python的学习中,以前我们实验楼总结过多篇Python实战项目列表,不但有用还有趣,最主要的是咱们实验楼不但有详细的开发教程,更有在线开发环 ...
- Python Built-in Function 学习笔记
Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...
- 第一个Python小项目:图片转换成字符图片
实现的效果: ...
- 机器学习 Top 20 Python 开源项目
转自:http://mp.weixin.qq.com/s?__biz=MzA4MjEyNTA5Mw==&mid=2652565022&idx=1&sn=9aa035097120 ...
- python全栈学习路线
python全栈学习路线-查询笔记 查询目录 一,硬件 十一,数据 ...
- 【年度盘点】10个热门Python练习项目
这10个项目,约有270000人学习过. 今天给大家盘点一下实验楼最热门的10个Python练习项目.第二名是<200 行 Python 代码实现 2048>,第三名是<Python ...
随机推荐
- VxWorks 引导程序
前言:vxworks 的一些文件,如 usrconfig.c 在 config,comp目录中均有出现,因编译方式而选择某一个文件,命令行方式采用 config 目录文件,tornado 图形界面配置 ...
- 芝麻HTTP:如何寻找爬虫入口
寻找爬虫入口 1 .本次任务的入口 这个爬虫的更好的入口就是我们平常使用的搜索引擎.搜索引擎虽然有很多种,但是其实都是在干一件事,收录网页,处理,然后提供搜索服务.在平时使用的过程中,我们通常都是直接 ...
- httpclient的get带参不带参post带参不带参的简单应用
一,基础的的应用 1.1,get的无参请求 @Test public void doGet() throws Exception { //创建一个httpclient对象 CloseableHttpC ...
- freemarker定义一个连续的序列(十九)
1.简易说明 定义一个连续的序列,并打印出序列中的元素 2.实现源码 <#--freemarker定义了一个连续的序列--> <#assign nums=1..100/> &l ...
- Halcon的应用程序 打开后 弹出没有帮助文件错误提示
问题: Halcon的应用程序 打开后 弹出没有帮助文件错误提示 解决方法: 建立(C:\ProgramFiles\MVTec\halcon)目录,将halcon安装目录下的help文件夹复制过来即可 ...
- CDQ 分治算法模板
CDQ分治 1.三维偏序问题:三维偏序(陌上花开) #include<bits/stdc++.h> #define RG register #define IL inline #defin ...
- Js - JQ事件委托( 适用于给动态生成的脚本元素添加事件)
最近一段时间打了一个大仗,现在总算消停点,才有时间来做个总结吧算是: 移动端遇到一个项目,是一个列表的侧滑栏,在我这里用jq写的交互事件.自测各方面都挺好的,美滋滋的给了研发.研发也美滋滋的开始开发. ...
- ssr 服务端安装教程
1 ShadowsocksR 多用户版服务端安装教程(SS-Panel后端) 2 ShadowsocksR 单用户版服务端安装教程
- JVM学习笔记一:Java运行时数据区域
1. 程序计数器 当前线程所执行的字节码的行号指示器. 2. Java虚拟机栈 线程私有,与线程具有相同生命周期.用于存储局部变量表.操作数栈.动态链表.方法出口等信息. 局部变量表存放内容: 基本数 ...
- 如何为Web应用选择托管主机
PHP应用开发好了?恭喜你!不过,现在还没什么用,因为用户无法使用.你要把应用存储到服务器中,让预期受众能访问.一般来说,存储PHP应用有四种方式:共享服务器.虚拟私有服务器.专用服务器和平台即服务. ...