Python学习札记(二十九) 模块2】的更多相关文章

参考:使用模块 NOTE 1.内建sys模块: #!/usr/bin/env python3 import sys 'a test module' __author__ = 'wasdns' def main(): args = sys.argv if len(args) == 1: print('Hello') elif len(args) == 2: print('Hello, %s' % args[1]) else : print('Your network has some proble…
参考:模块 NOTE 1.模块:一个.py文件称为一个模块. 2.代码模块化的意义:a.提升程序的可维护性 b.不用重复造轮子 3.避免模块冲突,解决方法:引入了按目录来组织模块的方法,称为包(Package). eg.abc.py => abc模块,xyz.py => xyz模块 倘若出现冲突 => 选择一个顶层文件夹名称,尽量保证名称唯一: my_company: __init__.py abc.py xyz.py 引入了包以后,只要顶层的包名不与别人冲突,那所有模块都不会与别人冲突…
参考:匿名函数 NOTE 1.Python对匿名函数提供了有限的支持. eg. #!/usr/bin/env python3 def main(): lis = list(map(lambda x: x*x, [1, 2, 3, 4, 5])) print(lis) if __name__ == '__main__': main() sh-3.2# ./lambda1.py [1, 4, 9, 16, 25] 可以看出,lambda相当于函数: def func(x): return x*x 2…
参考: 函数式编程 高阶函数 Note A.函数式编程(Functional Programming)介绍 1.函数是Python内建支持的一种封装,我们通过一层一层的函数调用把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元.这一点和C语言是一致的. 2.计算机和计算的概念: a.在计算机的层次上,CPU执行的是加减乘除的指令代码,以及各种条件判断和跳转指令,所以,汇编语言是最贴近计算机的语言. b.计算则指数学意义上的计算,越是抽象的计算,…
参考:使用枚举类 NOTE #!/usr/bin/env python3 from enum import Enum def main(): Mouth = Enum('Mouth', ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec')) for name, attr in Mouth.__members__.items(): print(name, '=>', attr, '=…
修饰器 NOTE 1.函数对象有一个__name__属性,可以拿到函数的名字: #!/usr/bin/env python3 def now(): print('2017/2/19') def main(): f = now f() print(now.__name__) print(f.__name__) if __name__ == '__main__': main() sh-3.2# ./decorator1.py 2017/2/19 now now 2.增强now函数的功能,又不想重新对…
参考:返回函数 NOTE 1.高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. eg.求和函数 #!/usr/bin/env python3 def calsums(*args): ans = 0 for i in args: ans = ans+i return ans def slowcalsums(*args): def cal(): ans = 0 for i in args: ans = ans+i return ans return cal def main(): r…
转载自:http://www.cnblogs.com/liwenzhou/articles/8283687.html 我们之前使用pymysql操作数据库的操作都是写死在视图函数中的,并且很多都是重复的代码. 我们可以优化一下,把重复的代码提取出来,写成函数: import pymysql # 定义一个数据库相关的配置项 DB_CONFIG = { "host": "127.0.0.1", "port": 3306, "user&quo…
参考: filter Problem SyntaxError: unexpected EOF while parsing 遇到该语法错误,一般是由于 括号不匹配 问题. Note 1.filter 用于过滤list,关键在于正确实现一个"筛选"函数. eg.过滤得到偶数: #!/usr/bin/env python3 L = [] # input 10 integers for i in range(10) : L.append(int(input())) # define filte…
早期的计算机通信需要有一个中间件,A要给B传东西,A必须要把信息传给中间件,B再把从中间件中拿到信息 由于不同机器之间需要通信就产生了网络 软件开发的架构 1.C/S架构 服务器-客户机,即Client-Server架构,C/S架构通常采取两层结构.Sever负责数据的管理,Client负责完成与用户的交互任务 这里来说Client主要是某个应用软件的exe文件,程序要在安装后,才能运行在用户电脑上. 例如:QQ.微信.网易云音乐等 2.B/S架构 浏览器端-服务器,即Browser-Sever…