摘要:
一个实现了_iter_方法的对象是可迭代的,一个实现了 next 方法的对象则是迭代器。 class Fibs: def __init__(self): self.a = 0 self.b = 1 def __next__(self): #def next(self): 如果写成这样会报错 Type 阅读全文
摘要:
DRY(Don't Repeat Yourself)原则: 一般是指在写代码的时候尽量避免重复的实现。违反DRY原则导致的坏处很容易理解,例如维护困难,修改时一旦遗漏就会产生不易察觉的问题。 一.函数装饰器 1.从Python内层函数说起 使用内层函数的三个好处 封装 贯彻DRY原则 闭包和工厂函数 阅读全文
摘要:
ATM作业:1.额度15000或自定义2.实现购物商城,买东西加入购物车,调用信用卡接口结账3.可以提现,手续费5%4.每月22号出账单,每月10号为还款日,过期未还,按欠款总额万分之5每日计息5.支持多账号使用6.支持账户间转账7.记录每月日常消费流水8.提供还款接口9.ATM记录操作日志10.提 阅读全文
摘要:
如下 # __author__ = liukun # coding:utf-8 def it(): print ('hello') yield 1 yield 1 a= it() print("#############") print(a) print("*************") for i 阅读全文
摘要:
多态是面向对象语言的一个基本特性,多态意味着变量并不知道引用的对象是什么,根据引用对象的不同表现不同的行为方式。在处理多态对象时,只需要关注它的接口即可,python中并不需要显示的编写(像Java一样)接口,在使用对象的使用先假定有该接口,如果实际并不包含,在运行中报错。 多态就是多种表现形态的意 阅读全文
摘要:
尽管str(),repr()和``运算在特性和功能方面都非常相似,事实上repr()和``做的是完全一样的事情,它们返回的是一个对象的“官方”字符串表示,也就是说绝大多数情况下可以通过求值运算(使用内建函数eval())重新得到该对象。但str()则有所不同,str()致力于生成一个对象的可读性好的 阅读全文
摘要:
generator归根到底是一个函数的返回值,这个函数是包含“yield”关键字的python函数。是不是可以这么说(不是很确定,似乎可以这么理解)1,凡包含“yield”关键字的函数,都返回generator2,generator不是函数,而是函数执行后构造的对象,是一种iterator。3,ge 阅读全文
摘要:
可以实现简单函数的功能 lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。 lambda表达式是起到一个函数速写的作用。允许在代码内嵌入一个函数的定义。 f=lambda a,b,c:a*b+c print(f(2,3,4)) #2*3+4=10 阅读全文
摘要:
read me 1.构造三个函数,乘除(mad),加减(aas),去括号(par); 2.获取表达式字符串之后,判断是否包含“+-*/()”等字符,包含则下一步3;不包含,返回字符串; 3.par 函数会取出最底层括号表达式,分别用 mad()、 aas()运算,运算结果替换括号以及其内容; 4.替 阅读全文