函数式编程

  • λ演算
  • LISP,Erlang
  • 尾递归 栈的使用
  • 避免防御式编程

ER实体Entity关系relationship


OOP [OOA/D]

  1. 属性、行为
  2. 继承、聚合、关联
  3. 抽象、封装

  • 笛卡尔方法论
    1. 拆分
    2. 排序
    3. 处理
    4. 归并
  • 软件工程过程方法论
    1. 软件生命周期
    2. RUP统一软件过程管理
    3. 敏捷开发
  • 项目管理(计划、组织、执行、控制)

  • 线性级
  • 逻辑级
  • 架构级
  • 工程级

自醒:

  1. type    type(object) -> the object's type
  2. str           str(object='') -> str ,Create a new string object from the given object
  3. dir               dir([object]) -> list of strings,return an alphabetized list of names comprising (some of) the              attributes of the given object, and of attributes reachable from it.
  4. help             Help on _Helper in module site object:

very important module:

  • os
  • sys

  • 常量
    1. 常量无名
    2. 不需要修饰
    1. 整数
    2. 长整数
    3. 浮点数
    4. 复数  
  • 字符串
    1. 单引号‘
    2. 双引号“
    3. 三引号”’
    4. 转义符\
    5. 原生字符串 r"hello world!\n"
    6. 常用的索引相关操作
    7. 切割操作
    8. 邪恶的 eval()
  • 变量
    1. 首字符为字母或下划线
    2. 其他部分字符为字母、数字、下划线
    3. 区分大小写
  • 数据类型
    1. 数值
    2. 字符串
    3. 线性容器
      • 字符串也是一种线性容器
      • List
      • tuple
    4. hash容器
      • Dict
      • set
    5. None
    6. 逻辑类型(Ture, False)
  • 逻辑行与物理行
  • 缩进
  • 运算符与表达式
  • 流程控制(逻辑控制结构)
  • 函数
    1. 普通

      def functionName():
      """……
    2. 函数别名
    3. lambda
    4. 闭包
      def fun1(a):
      def fun2(b):
      return a+b
      return fun2
  • OOP
  • 异常处理
  • 模块与包
#coding=utf-8
#!/usr/bin/python2.7
  • 文件和目录操作
open        Open a file using the file() type, returns a file object.
write
read
readlines
Seek
Os.listdir
Os.walk

  • python的内置容器
    1. List
    2. Tuple
    3. Dict
    4. Set
    5. map、reduce、filter
    6. 迭代器iterator与生成器generator,协同与半协同

  • 并行的世界
    1. 串行与并行
    2. 阻塞与非阻塞任务
    3. 共享与冲突
    4. 多线程与多进程【linux】的区别和特点

  • 多进程
    1. Linux、Unix平台专属
    2. Fork      【fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程】
      1. import os
        
        def myfork():
        a=1
        pid = os.fork() if pid==0:
        print "this is child process"
        print a+1
        else:
        print "this is parent process"
        print a+3 if __name__ == '__main__':
        myfork()
        '''
        waitpid(...)
        waitpid(pid, options) -> (pid, status) Wait for completion of a given child process.
        ''' os.waitpid()
    3. wait
    4. Waitpid
    5. pipe\signal
      1. ''' process communication, resource share '''
        
        # pipe
        '''
        pipe(...)
        pipe() -> (read_end, write_end) Create a pipe.
        '''
        r,w = os.pipe() # signal
        import signal
    6. 守护进程

  • 多线程
    1. Thread
    2. Threading
    3. 共享变量与临界资源
    4. 锁机制

about python的更多相关文章

  1. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  2. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  3. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  4. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  5. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  6. 使用Python保存屏幕截图(不使用PIL)

    起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...

  7. Python编码记录

    字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...

  8. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

  9. python开发编译器

    引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...

  10. 关于解决python线上问题的几种有效技术

    工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...

随机推荐

  1. 中文乱码问题(使用Servlet3.0新特性实现文件上传——上传文件名中文乱码问题)

    问题描述:就是文件传送过来的文件名等是乱码 解决方法:将传送的JSP页面(即含有表单的页面)的页面编码方式改为: <%@ page contentType="text/html; ch ...

  2. Visual Studio 2015安装过程卡住,解决办法

    Visual Studio 2015安装过程中卡住的情况有很多,我遇到的是卡在安装windows 更新KB2999226,解决办法 手动安装此更新包,位置在Visual Studio的安装包中,目录: ...

  3. PHP如何取出数组最后一个元素?

    <?php $array=array("first","sencond","third"); #1.echo end($array); ...

  4. sql server2008报“评估已过期....."

    开始-->所有程序-->Microsoft SQL Server 2008-->配置工具-->SQL Server 安装中心-->维护-->版本升级,接着按照提示一 ...

  5. richTextBox插入表格

    附件:http://files.cnblogs.com/xe2011/richTextBox_InsertTable.rar 插入表格 /// <summary> /// 插入表格 /// ...

  6. 节点类(CCNode)

    节点与渲染树 回顾前面的介绍,我们已经知道了精灵.层和场景如何构成一个游戏的框架.精灵属于层,层属于场景,玩家与精灵互动,并导致游戏画面在不同场景中切换.把每个环节拼接在一起,我们得到了一个完整的关系 ...

  7. ASP.NET中如何实现负载均衡

    ASP.NET站点中做负载均衡: 基于HTTP协议我们可能发现我们要解决两点问题: 第一,做到负载均衡,我们需要一个负载均衡器. 可以通过DNS轮询来做,在DNS服务器上配置为每次对我们做负载均衡的同 ...

  8. update inner join

    string sql = @"update a set a.M_ParentID=b.M_ParentID, a.M_Name=b.M_Name, a.M_Seq=b.M_Seq from ...

  9. CSS中Position属性

    也许你看到这个标题觉得很简单,确实这是一篇关于CSS中Position属性基础知识的文章,但是关于Position的一些细节也许你不了解. 1.简介 position有五个属性: static | r ...

  10. 如何打包成jar包自己看呢?

    第一步:选择你要导出的部分 第二步: