pythonjs语法_python、ruby、js 的语法区别

运算符

+、-、* 都差不多

/:Python 和 JavaScript都会返回浮点数,ruby 返回整数

Python 的// 返回整数

运算符

Python

Ruby

Javascript

整除

//

/

Math.floor(a/b)

除法

/

a.to_f / b

/

乘方

**

**

**

表达式

三元表达式

# python

1 if True else 2

# 1

# ruby

true ? 1 : 2

# 1

// javascript

true ? 1 : 2

// 1

Python中的三元表达式比较特殊,没有其它语言的那样通用形式

字符串

原始字符串

# python

r"hello\nworld"

# ‘hello\\nworld‘

# ruby

‘hello\nworld‘

# "hello\\nworld"

python 中的‘‘和""几乎没有区别,ruby中用单引号‘‘作为原始字符串

JavaScript中‘‘和""几乎没有区别

字符串插值

# python

a = ‘hello‘

f‘{a} world‘

# ‘hello world‘

# ruby

a = ‘hello‘

"#{a} world"

# "hello world"

// javascript

a = ‘hello‘

`${a} world`

// "hello world"

多行字符串

# python

‘‘‘

hello

world

‘‘‘

# ‘\nhello\nworld\n‘

# ruby

<

hello

world

EOF

// javascript

`hello

world`

JavaScript的模板字符串是可以任意换行的

数组

这三者对数组的定义几乎是一样的,并且数组里面可以放不同类型的元素,数组长度可变

# python

a = [1, 2, 3]

# ruby

a = [1, 2, 3]

// javascript

a = [1, 2, 3]

添加元素

# python

# a = [1, 2, 3]

a.append(4)

# [1, 2, 3, 4]

# 一次只能添加一个元素

# ruby

a.push(4, 5)

a.append(4, 5)

a << 4

// javascript

a.push(4,5)

Python 的append一次只能添加一个元素,Ruby和JavaScript一次可以添加多个元素。

数组切片

# python

a = [1,2,3,4,5]

a[1:3]

# [2,3]

# ruby

a = [1,2,3,4,5]

a[1...3]

# [2,3]

a[1..3]

# [2,3,4]

a[1,3]

# [2,3,4]

# 第一个参数是起始下标,第二个参数是长度

// javascript

a = [1,2,3,4,5]

a.slice(1,3)

// [2,3]

这三个语言的数组切片都不会改变原数组,Python、JavaScript、Ruby的[start...end]比较类似,都是从起始下标到结束下标(不包含结束下标)。Ruby还有其它的切片方法。

常用数组方法

数组方法

python

ruby

javascript

添加元素

append

push、append、<<

push

字典(Hash)

字典合并

# python

a = {1: 1}

b = {2: 2}

{**a, **b} # 产生一个新的元素,不影响原来的元素

# {1: 1, 2: 2}

a.update(b) # a会被改变

# a == {1: 1, 2: 2}

# ruby

a = {a: 1}

b = {b: 2}

a.merge(b) # 不影响原来的元素

# {a: 1, b: 2}

a.merge!(b) # a会被改变

// javascript

a = {a: 1}

b = {b: 2}

{...a, ...b}

// {a: 1, b: 2}

函数

匿名函数

# python

lambda x, y: x + y

// javascript

function(x, y){

return x + y

}

原文:https://www.cnblogs.com/cp5670681/p/14288037.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值