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 ...
随机推荐
- HI3531的DDR3配置流程
DDR3 初始化配置流程 系统上电之后,必须先完成DDR3 SDRAM 的初始化操作,系统才能访问DDR3 SDRAM.在进行初始化之前需要注意以下几点: 对DDR3 SDRAM 进行上电操作时,需要 ...
- 【mongodb系统学习之三】进入mongodb shell
三. 进入mongodb shell(数据库操作界面) : 1).在mongodb的bin目录下输入./mongo,默认连接test数据库,连接成功会显示数据库版本和当前连接的数据库名,如图: 2). ...
- Java中的大小写字母相互转换(不利用Java自带的方法)
Java中的大小写字母相互转换(不利用Java自带的方法) 1.设计源码 /** * * @title:UpperAndLower.java * @Package:com.you.utils * @D ...
- Linux显示PCI设备
Linux显示PCI设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lspci -tv -[0000:00]-+-00.0 Advanced Micro ...
- 如何开发jQuery插件
一:普及JQuery知识 知识1:用JQuery写插件时,最核心的方法有如下两个: $.extend(object) 可以理解为,为JQuery 类添加一个静态方法. $.fn.extend(obje ...
- CF367 E - Working routine
十字链表模拟 #include<bits/stdc++.h> using namespace std; int n,m,q; struct Node{ int v; int d,r; }m ...
- ssm整合快速入门程序(三)之Data类型转换器
今天就写写springmvc配置Data类型转换器 首先在创建一个转换器的包cn.my.ssm.controller.converter,创建一个CustomDateConverter类实现Conve ...
- [SDOI2012]Longge的问题
题目大意: 网址:https://www.luogu.org/problemnew/show/P2303 大意:给定一个N,求\(\Sigma_{i=1}^N gcd(i, N);\). 题目解法: ...
- up61博客模版版本v1.0.0
经过两天的努力 终于把博客模板框架写出来了. 表示写模板累死了,很久没有写样式了,还是那么难搞.没有PHP写函数爽. 不管怎么样 第一版出来了.以下是部分截图.预览 当然在示例部署到项目上的时候 ,部 ...
- jdk,maven,tomcat 的环境配置
一般的下载,我想就不用我多说什么了,mysql的配置在mysql压缩包安装方式上,这里直接贴图,下次要是忘记了可以看一眼. 这两个是直接新建的,打开方式为我的电脑,右键:属性,左侧:高级系统设置,下侧 ...