| Python | PHP | ||||||||
输入 | input() |
| ||||||||
输出 | print() | echo、var_dump() 、print、print_r | ||||||||
退出 | exit() | exit()、die() | ||||||||
linux直接运行 | 代码前加入注释 #!/usr/bin/env python3
权限设置 $ chmod a+x filename.py | |||||||||
格式 | 采用缩进方式 | 花括号 | ||||||||
大小写 | 敏感 | 不敏感 | ||||||||
缩进 | tab和4空格缩进不允许混用 |
| ||||||||
转译区 | r'' |
| ||||||||
换行 | print('''内容''') | \n | ||||||||
布尔值运算 | and、or、not | && || ! | ||||||||
除法 | 普通除/,地板除(向下取整)// | / | ||||||||
整数和浮点数 | Python的整数没有大小限制 Python的浮点数也没有大小限制,但是超出一定范围就直接表示为inf(无限大) |
| ||||||||
字符串转bytes | string.encode('ascii') string.encode('utf-8') |
| ||||||||
bytes转字符串 | string.decode('ascii') string.decode('utf-8') 在bytes中,无法显示为ASCII字符的字节,用\x##显示。直接转码时报错 string.decode('utf-8',errors = 'ignore') |
| ||||||||
字符串长度 | len() bytes在使用len()时会计算字节数 | strlen() | ||||||||
utf-8转码标记 | 文件头 #!/usr/bin/env python3 # -*- coding: utf-8 -*- | header('content-type:text/html;charset=utf-8'); | ||||||||
格式化输出 | print('%s,%s' % ('tony', 'joe')) %% 表示%
|
|
| Python | PHP |
有序集合list | 一种有序的集合,可以随时添加和删除其中的元素,元素类型不限制 可以list里面嵌套list list = [1,2,3,4,5] | 类似redis中的有序集合 |
集合长度计算 | len() | lsize(key) |
索引访问 | list[0],索引范围为0—(len(list)-1) 索引为-1时表示最后一个元素,反过来也同样不允许越界 | lindex(key,0) |
尾部添加 | list.append(value) | rpush(key,value) |
尾部删除 | list.pop() | rpop(key) |
指定索引添加 | list.insert(index,value) |
|
指定索引删除 | list.pop(index) |
|
集合排序 | list.sort() 执行后直接改变list |
|
集合嵌套 | 嵌套集合使用len()时候,只计算第一层元素数量,但是可以先用索引找到子元素,然后继续使用子元素的索引获得元素 |
|
元组tuple | 一种不能修改的有序列表 tuple = (1,2,3,4,5) 定义的时候必须确定元素,如果是空的,直接使用tuple = ()表示 特殊情况:tuple中包含list,尽管list中内容可变,但是tuple的资源指向不会变化 注意:单元素的时候如果想表示元组必须加个逗号! tuple = (1,),否则按小括号计算,定义为普通变量 |
|
| Python | PHP |
条件判断 依靠缩进判断执行顺序
:代替{}
elif简化表达 | a = 100 if a>100: print(a) elif a==100: print(0) else: print(-a) | a = 100; if (a>100) { print(a); }elseif (a=100) { print(0); }else{ print(-a) } |
input结合条件判断 | s = input('birth: ') birth = int(s) if birth < 2000: print('00前') else: print('00后') input输入的是字符串,直接与数值比较的时候会报错! |
|
for循环 | a = ["aaa","bbb","ccc"] for s in a: print(s)
b = [1,2,3,4,5] sum = 0 for num in b: sum = sum + num print(sum) |
|
while循环 | sum = 0 a = 1 while a<=100: sum = sum + a a = a + 1 print(sum) |
|
break | 结束循环 |
|
continue | 结束本次循环,执行下个循环 |
|
range生成整数序列 | list(range(num)) 可以生成0—num-1的整数list |
|
| Python | PHP |
字典dict | 键值对方式存储 dict = {"a":1,"b":2,"c":3} 查找和插入的速度极快,不会随着key的增加而变慢;需要占用大量的内存,内存浪费多。 空间换时间 dict的key必须是不可变对象。 | 类似json |
dict获取 key不存在的时候会报错 | print(dict["a"]) 或 print(dict.get(key,defaultValue)) 不设置默认值的时候取不到返回none |
|
判断key是否存在 | print(key in dict) |
|
dict数据插入 key一样的时候,后插入替换前面 | dict["d"] = 4 |
|
dict数据删除 | dict.pop(key) |
|
无序集合set | 一组key的集合,不存储value, key不重复,重复的时候会自动过滤 以list作为输入集合 list = [1,3,2] set = set(list) print(set) |
|
集合新增 | set.add(key) 重复时能运行,不生效,自动去重 |
|
集合删除 | set.remove(key) |
|
set交集和并集 | 交集set1 & set2 并集set1 | set2 |
|