PHP2Python 基本语法精要
网络整理 - 08-26
特殊字符:
# 后为注释
python中仅有行注释,无多行注释
\n 为标准行分隔符
\ 继续上一行
有两种情况不用 \ 就可以换行, 一种是 """ 注释,还有一种就是括号
; 将两个语句连在一行中
: 将代码块的头和体分开
代码规则
代码块 以缩进的方式体现
不同的缩进深度分隔不同的代码块
Python文件以模块的方式组织
变量赋值
python中赋值一般都是将引用赋值给变量
python中赋值语句并不会返回值(区别于C)
python中支持多重赋值
python不支持 x++ 或者 --x 的操作
python支持多元赋值
标识符
python中大小写敏感
关键字
python的关键字不断发展
关键字列表和iskeyword()函数都放入了keyword模块以便查询
专用下划线标识符
_xxx 私用变量,模块外不可使用
__xxx__ 系统定义名字
__xxx 类中私有变量名
文档
Python 还提供了一个机制,可以通过__doc__特别变量,动态获得文档字串。在模块,类声明,或函数声明中第一个没有赋值的字符串可以用属性 obj.__doc__来进行访问,其中 obj是一个模块,类,或函数的名字。这在运行时刻也可以运行。
模块布局
复制代码
变量定义与动态类型
基本与php相同
内存分配
python使用引用计数的方式记录各个对象有多少个引用
当使用赋值或传参的方式传递给另外一个变量或函数时,对象的引用加1
引用减少
1. 当变量同赋值给另外一个对象时,原对象的引用计数 -1
2. 使用 del 操作符
3. 一个本地引用离开其作用范围 (通常在函数执行后,作用域中的临时变量引用销毁)
4. 对象从一个窗口对象中销毁
myList.remove(x)
5. 窗口对象本身被销毁
del myList
del操作
del 语句会删除对象的一个引用,它的语法是: del obj1[, obj2[,... objN]]
del 语句也会删除该对象的最后一个引用,这样该对象就是不可访问的了,成为垃圾收集的对象
垃圾收集
Python 的垃圾收集器实际上是一个引用计数器和一个循环垃圾收集器。可以防止出现两个对象循环引用而不能被回收的情况.
作为引用计数的补充, 垃圾收集器也会留心被分配的总量很大(及未通过引用计数销毁的那些)的对象。