python整型取决于内存的大小, 最大位数不限制. PHP的整型取决于平台, 最大位数用二进制31位进行表示(2147483647), 超过则用浮点数代替. 两者浮点数表示方法相同.
python引入了复数类型.
>>> 3 + 1j*3
(3+3j)
php的变量前要加”$”, python变量命名规则和C基本相同.
python按缩进分隔语句块.
python单引号和双引号的内容都将进行转义处理, 如果想让其不转义(PHP的单引号方式), 需在字符串之前加一个”r”.
>>>print r”hello
world”
hello
world
python各字符串之间如果用空格连接将会合并返回.
>>>”hello” “world”
helloworld
PHP用”.”符号进行字符串或变量连接, python用”+”符号(字符常量时可使用空格, 如上).
>>>a = “hello”
>>>b = “world”
>>>a + b
helloworld
python的**运算符可以完成取幂运算, //运算符完成商的取整运算.
>>>2 ** 8
256
>>>6.0 // 4.0
1.0
python比较运算符和逻辑运算符可以连续使用.
>>>100 > 90 > 80 < 200 < 300
True
>>>True and True and True
True
PHP用”&&”或”and”表示布尔与, 两者区别是优先级不同, python只用”and”表示.
PHP用”||”或”or”表示布尔或, 两者区别是优先级不同, python只用”or”表示.
PHP用”!”表示布尔非, python用”not”表示.
python支持lambda表达式.
python提供了一个in运算符可以测试数组内是否包含某个元素, 类似于php的in_array函数.
>>>1 in [1, 2]
True
提供了is运算符用于测试和另一个值或变量是否相等, 是则返回True.
>>>True is True
True
python 输出的时候会自动在变量之前加一个空格.
python的for循环类似于PHP的foreach, 其没有类似于php的for循环.
python没有switch开关语句, 需要用if elif else语句代替.
python的while, for循环可以使用else从句.
python定义函数时不可先声明有默认值的, 后声明无默认值的, 有默认值的形参必须放在后面. PHP则可以.
python支持调用函数时进行关键字参数赋值.
fun(a=”hello”, d=”world”)
默认值只会解析一次。当默认值是一个可变对象,诸如链表、字典或大部分类实例时,会被当做引用赋值.
python存在模块概念. 并且存在包的概念.
python有列表, 字典等数据结构, PHP的数组也做了相应实现, 但没有其灵活.
python可以对列表, 字符串, 元组做切片操作.
>>> str = “hello”
>>> print str[0:3]
hel
>>> list = [100, 200, 300]
>>> print list[0:2]
[100, 200]
>>> tuple = (‘songfeng’, ‘luming’, ‘yuhui’)
>>> print tuple[0:2]
(‘songfeng’, ‘luming’)