啊啊啊啊啊啊啊,全都是java岗位 算法岗位,说好的python应用范围已经超过java的呢?哎,真不想去银行。
python是什么?
面向对象 高级语言 解释性语言 字节编译性
特点:可移植,易维护,无需内存管理(可以主动del),可扩展
Jython Cpython
python2 raw_input input python3 input
交换赋值:x,y = y,x
不可变对象:数值,字符串,元祖 可变对象:列表,字典,集合(set) 不同值的id()会指向内存的不同值
不可变对象,该对象所指向的内存中的值不能被改变。(eg.a是个string修改a id(a)会变)
可变对象,该对象所指向的内存中的值可以被改变。(例:a是个list 对a中值进行操作 id(a)并不会改变)
程序的三种结构:顺序 循环 选择
__init__函数:在创建instance后同时隐式执行 初始化函数
__"name"__特殊方法
内建函数:type cmp str len dir help int range input 工厂函数等等
\表示继续上一行
多元赋值 : x,y,z = "a","b","c" 两边的对象是元组 不可变对象
Python标识符 大小写敏感
_xxx 私有 不能被另一个导入(import)
python代码风格:
#注释
import model
global 变量声明
类
外部函数
主函数
引用计数:对象创建时候 别名创建 函数参数 变为容器对象的元素 可以用del删除不用的来减少引用计数
python没有char型 没有单精度 python的float是双精度 python不支持对 方法或者函数 的重载 合理命名 python没有指针
类型工厂函数:强制换换 如 int float long str等
数字:int longint bool float complex
地板除://结果向下取整 按位取反:~ coerce(a,b)将a b 转化成同一类型
divmod() return结果和余数
序列:一种python的类型,内部成员有序排列,并且可以通过下表偏移量访问他的一个或者几个成员。包括字符串,列表和元组类型。
slice:[start:stop:strip] 正向索引|反向索引:1 -1
%c char %d有符号十进制数 %u无符号十进制数 %e科学计数法 %f浮点型 %g=%e+%f %x无符号16进制数
%%用来输出%去掉%的意义
r原始字符串操作符
enumerate() i a[i]
编码 encode 解码 decode