- 本页面持续更新中...
项目 | python | javascript |
---|---|---|
适用版本 | python3 | es6,即ECMAScript 2015 |
运行环境 | #!/usr/bin/python # -*- coding: UTF-8 -*- ,第1句指定linux运行环境,第2句指定文件编码 | 'use strict';,使用限制模式,即强制要提前声明变量,否则报错 |
大小写 | 要区分大小写 | 同python |
语句结尾 | 不需要 | 必须加分号; |
单行注释 | 用 # | 用// |
多行注释 | 不支持,通常变通为不赋值的多行字符串,即三个引号 ''' | 多行用/* */ |
变量声明 | 不需要 | 必须声明,格式为:let i=0; |
字符串 | 单双引号都可 | 同python |
多行字符串 | 用三引号,''' 或 """ 都可 | 用 ` |
转义字符 | 用 \ 表示,如 \ \ 表示\ | 同python |
批量不转义 | 用 r' ... '表示,即原样输出,不转换 | 不支持 |
16进制数字 | 用0x表示,如0xaf | 同python |
16进制字符串 | 用\ x表示,如'\ x41表示A | 同python |
unicode字符串 | 用\ u表示,如 '\ u4e2d'表示 中 | 同python |
取幂 | 用双乘号**,相当于重复xx次,可用于数字和字符串 | 不支持 |
取商数 | 用双除号// | 不支持,//表示注释 |
取余数 | 用 百分号 % | 同 python |
布尔值 | True 或 False | true 或 false |
与或非 | 与and,或or,非not | 与&&,或||,非! |
空值 | 用 None | 用null |
赋值 | 用等号=,或+=,-= | 同python |
判断相等 | 用双等号== | 用三等号===,双等号比较时会进行类型转换,不安全 |
判断不等 | 用!= | 同python |
代码块 | 用4个空格缩进,缩进的上一句结尾用冒号: | 用花括号{} |
占位语句 | 用pass,表示有个功能,但还没开发出来,暂时留个位置 | 不支持 |
函数 | def 函数名(参数): | function 函数名(参数){} |
模块 | import 模块名,py文件就是模块 | 不支持 |
包 | import 包名/模块名,文件夹就是包,必须包含有 __init__.py
|
不支持 |
数组 | 叫list,如[1,2] | 叫array,如[1,2] |
元组 | 叫tuple,如(1,2),不能修改 | 不支持 |
if语句 | if xxx:...elif...else | if(){...}else if(){...} else {} |
for循环 | for xxx in range(10):... | for(var i=0;i<=10;i++){} |
for...in循环 | for k in o:... | for(var k in o){} |
while循环 | while xxx:... | while(){} |
do...while循环 | 不支持 | do{} while(); |
其他技巧
python
- 模块单独执行,
if __name__=='__main__'
- 元组只有1个值时,要写成(1,)
- if等语句的条件,在python时不需要加(),在js时则要加()
字符串与编码
- 在python中,所有字符串默认都是unicode,都是str对象。unicode主要就是显示给人看的。
- 所有文件存储,网络传输都是bytes对象,用b'...'表示
- 从字符串unicode转为bytes,就称为编码encode,反之则为解码。最常用的编码规则是UTF-8,用3个字节表示1个中文字。
- '中文'.encode('UTF-8'),转为字节码 b'\ xe4\ xb8\ xad\ xe6\ x96\ x87'
- b'\ xe4\ xb8\ xad\ xe6\ x96\ x87'.decode('UTF-8'),转为unicode,即 中文