特殊变量

python用下划线作为变量的前缀和后缀指定特殊变量.
_XXX : 不用 'from module import *' 导入, 可以认为是模块中的私有变量
__XXX__ : 系统定义的名字
__XXX : 类中的私有变量
避免用下划线开头作为变量名称

模块布局

(1) 起始行(unix)
(2) 模块文档, 简介模块的功能和重要的全局变量的含义, 模块外可通过 module.__doc__ 访问这些内容
(3) 模块导入
(4) 变量定义, 这里指的是全局变量, 本模块中的所有函数都可以直接使用. 从好的编程风格角度说, 除非必须, 否则尽量使用局部变量代替全局变量
(5) 类定义
(6) 函数定义
(7) 主程序

测试代码

在主程序中书写测试代码

测试代码仅当文件被执行时运行(不是文件作为模块被其他模块导入), 我们应该利用 __name__这个有利条件, 将测试代码放在名字叫main()或者test()的函数中. 如果该模块被当作脚本运行, 就调用该模块.

编程调试

debugger : pdg, 允许设置断点, 调试

logger : logging, 程序日志系统

profiles: profile, hotshot, cProfile

匿名函数

python允许使用lambda关键字创建匿名函数. 可以有参数

lambda 表达式返回可调用的函数对象.

lambda : True

在上边的例子中, 我们简单的用 lambda 创建了一个函数(对象), 既没有在任何地方保存它, 也没有在任何地方调用它. 这个函数的引用计数在函数创建时被设置为True, 但是因为没有引用保存下来, 计数又回到 0 , 然后被垃圾回收. 为了保留住这个对象, 我们将它保存在一个变量中, 以后可以随时调用.

true = lambda : True

true()

闭包

看样子跟 javascript 类似, 函数中定义函数.

最新文章

  1. An App ID with Identifier 'com.XXX.XXX’ is not available. Please enter a different string.报错
  2. rpc使用举例
  3. JMeter中的关联-正则表达式提取(1)
  4. QQ微信的备份
  5. 能源项目xml文件标签释义--CommonsMultipartResolver
  6. BestCoder 1st Anniversary($) 1003 Sequence
  7. Principles of good RESTful API Design 好的 RESTful API 设计
  8. 常用DOS命令参数详解
  9. CentOS 6.4 + 曙光DS200 IPSan组建FTP服务器
  10. cout、cerr、clog
  11. JS跨域代码
  12. Linux - 进程间通信 - 信号量
  13. JPush 使用教程
  14. 认识容器和Docker(一)
  15. java &与&& |与||的区别
  16. LeetCode-876 链表的中间结点
  17. 简述Oracle IOT(Index Organized Table)
  18. 清北合肥day1
  19. TF-IDF基本原理
  20. quartz自定义线程数

热门文章

  1. Entity Framework 同一个上下文中,如何进行对同一个实体进行指定字段更新
  2. PhotoShop CS6学习笔记
  3. Java:集合,对列表(List)中的自定义对象按属性(字段)排序(正序、倒序)的方法
  4. 开发前奏曲之添加Android SDK平台工具
  5. 解决"VC6.0的ClassView里不能显示类或成员变量"问题
  6. Android中的MVP架构分解和实现
  7. 读取JPG图片的Exif属性(一) - Exif信息简介
  8. oracle 负载均衡连接方式常用SQL语句备忘录
  9. 【delphi】多线程与多线程同步
  10. 【Android】LayoutInflater