區別:1、JS中註解用「//」和「/* */」符,而Python中用「#」和「""" """」符;2、JS的每個程式碼區塊都必須放在花括號,而Python不使用花括號或圓括號;3、Python不支援「 」和「--」運算符,而JS支援。
本教學操作環境:windows7系統、javascript1.8.5&&Python3版、Dell G3電腦。
JavaScript和Python是兩門非常重要的語言。儘管包括我在內的許多人都知道Python或JavaScript,但我們並不清楚兩種語言之間的重要差異。
我注意到這兩門年語言有許多語意上的區別,相信理解這些區別對我和其他人都有很大幫助。在本文中,我將比較我在兩門語言中遇到的一些基礎概念。所以,如果你熟悉JavaScript或Python,想了解二者的差異,那你就來對地方了!
JavaScript
使用雙斜線(/ /
)作為單行註釋,/* */
作為多行註釋。
Python
使用# 作為單行註釋,使用三引號
"""" ""
作為多行註解。
#JavaScript
JavaScript中的每個程式碼區塊都必須放在花括號({}
)中,每個語句必須使用分號;
結束。
var a = 2; if(a>0){ console.log("Positive"); } else{ console.log("Negative"); }
Python
Python中的程式碼區塊使用縮排表示。它不使用花括號或圓括號,而是使用空白。每條語句都需要換行。
a = 2 if a>0: print("Positive") else: print("negative") print("does not belong to else block")
我無法在本文中完整地討論JavaScript和Python之間的資料型別差異,這裡我們只討論主要的差異。
基本資料類型
上面的表格展示了JavaScript和Python的基本資料類型。 JavaScript中的Number類型表示Int和float值,由編譯器在執行時決定。而JavaScript(ES10)中的BigInt用於儲存大整數,而Python則使用Int表示所有尺寸的整數。
JS使用null關鍵字表示空值,Python使用None。
Python沒有undefined和symbol的概念,這些是JavaScript特有的。
Python有一個特殊的資料型別-complex,用來表示複數 x yj,其中x是實部,y是虛部。
a=3+4j print(a.real) #3 print(a.imag) #4
非基本資料類型
上圖展示了複雜的(或稱為非基本)資料類型。 Python中的列表能儲存任何資料類型,與JavaScript一樣。
但Python中的陣列可以使用函式庫(如NumPy,array)來定義。 Python中的陣列只能包含統一資料型別。 Python中的列表和陣列有很大區別。數組上可以執行多種數學操作,而列表不能。
JavaScript中的物件類似Python中的字典。兩者都包含鍵值對。但物件是JavaScript中的基本組成部分,而字典在Python中只不過是個資料容器。
Python中的元組是一個不可修改的清單。用元組表示的清單無法被重新定義。而JavaScript沒有這個概念。
因此,Python擁有內建的雜湊表(字典),而JavaScript沒有內建的雜湊表、方法或函式庫。
JavaScript
在JavaScript中定義變數需要使用三種主要的關鍵字:var,let和const。定義方法決定了變數的使用方式(以及作用域)。
Python
Python中定義變數不需要使用關鍵字,只需要給變數名稱直接賦值:
a = 3 print (a) # 3
JavaScript
JavaScript中的條件語句是if、else if、else還有switch。
Python
Python中的條件語句是if、elif和else。
elif是else-if的縮寫。 Python沒有switch語句。相反,可以用字典來代替。
#JavaScript
JavaScript的三元運算符(?:)是一個條件運算符,語法為(condition)?(expresssionIfTrue):(expressionIfFalse):
var age = 26; var beverage = (age >= 21) ? "Beer" : "Juice"; console.log(beverage); // "Beer"
Python
# Python中的三元運算子的語法是(expressionIfTrue) if (condition) else (expressionIfFalse)
a, b = 10, 20 min = a if a < b else b print(min)
全等运算符(===)也叫“严格相等运算符”,会比较两个运算数并检查其相等性,而不会进行类型转换,也就是说,它会检查运算数的数据类型。返回值为布尔。JavaScript只有一个全等运算符。
var a=3,b="3"; console.log(a==b); // true console.log(a===b); // false
Python
Python有两个全等运算符:is 和 is not。
is 运算符会测试两个运算数是否为同一个对象,is not为is的反面。
x = 5 if (type(x) is int): print ("true") # true if ( type(x) is not int): print ("true")
JavaScript
成员运算符检查对象中的特定属性。JavaScript只有一个成员运算符:in。
const user= {name: 'Sara', age: 19, sex: "female"}; console.log('name' in car); // output: true
Python
成员运算符用于验证某个值是否为成员。Python有两个成员运算符:in和not in。
x = 24 y = 20 list = [10, 20, 30, 40, 50 ] if ( x not in list ): print ("not present") # Output:True
JavaScript
JavaScript有三种循环:
入口控制循环:for和while(在执行循环语句之前测试条件)
出口控制循环:do-while(执行循环语句之后测试条件)
// for loop var c = ["red", "green", "blue", "purple"]; for (var i = 0; i<4; i++){ console.log(c[i]); } // prints array// while var c = ["red", "green", "blue", "purple"]; while(i<4){ console.log(c[i]); i++; } // prints array
Python
Python有两种循环:for和while。Python没有内置的do-while循环。
Python的while循环与JavaScript的for循环类似。例如下面的例子:
c = ["red", "green", "blue", "purple"] i = 0 while i<4: print(c[i]) i += 1 # i++ is invalid
Python不支持++和--运算符。我们需要使用x+=1和x-=1。
for循环用来遍历序列(列表、数组和元组)。它使用in操作符和range()函数进行迭代。可以用range()生成一系列数字,该函数接受三个参数:start,stop和step。
start:开始的位置(可选)。默认为0。
stop:结束的位置(必须指定)。
step:指定序列中两个数字之间的间隔(可选)。
x = range(5) for n in x: print(n) # 1,2,3,4x = range(3,9) for n in x: print(n) # 3,4,5,6,7,8x = range(2,20,2) for n in x: print(n) # 2,4,6,8,10,12,14,16,18
更多编程相关知识,请访问:编程视频!!
以上是python與javascript有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!