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的多任务并发程序设计(2) ――任务控制
4 任务与任务状态 VxWorks实时内核Wind提供了基本的多任务环境.对用户而言,宏观上看起来,多个任务同时在执行.而本质而言,在微观上,系统内核中的任务调度器总是在根据特定的调度策略让它们交替运 ...
- 安装STS报错(二)
安装STS报错 1.启动时报错 2.报错原因 3.处理办法
- JavaScript向select下拉框中添加和删除元素
JavaScript向select下拉框中添加和删除元素 1.说明 a 利用append()方法向下拉框中添加元素 b 利用remove()方法移除下拉框中最后一个元素 2.设计源码 < ...
- Java代码输出是“father”还是“child”(一)
1.实例 /** * 以下代码输出的结果是 */ package com.you.model; /** * @author YouHaidong * 输出的结果 */ public class Fat ...
- Flex中创建Accordion报错
1.错误描述 2.错误原因 <mx:Accordion width="100%" height="100%"> <s:NavigatorCon ...
- 【原】Java学习笔记031 - 常用类
package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 类 Math: ...
- 在.Net Core中使用MongoDB的入门教程(二)
在上一篇文章中,讲到了MongoDB在导入驱动.MongoDB的连接,数据的插入等. 在.Net Core中使用MongoDB的入门教程(一) 本篇文章将接着上篇文章进行介绍MongoDB在.Net ...
- 你该怎么选Offer
原文出处:http://www.360doc.com/content/15/1223/07/1209677_522436084.shtml 记录目的:自勉.分享 摘要 一段时间无数公司.无数投资人蜂拥 ...
- Android实时直播,一千行java搞定不依赖jni,延迟0.8至3秒,强悍移动端来袭
项目首页:https://github.com/ossrs/srs-sea SRS服务器项目:https://github.com/ossrs/srs 一个支持RTMP推流的版本:https://gi ...
- 基于 HTML5 WebGL 的 3D 机房
前言 用 WebGL 渲染的 3D 机房现在也不是什么新鲜事儿了,这篇文章的主要目的是说明一下,3D 机房中的 eye 和 center 的问题,刚好在项目中用上了,好生思考了一番,最终觉得这个例子最 ...