C++、Java、JavaScript和python几个语句的对比介绍
C++ 、Java 、JavaScript 和python 语言的for 语句
C++、Java和JavaScript的for语句的语法类似如下:
for (初始条件; 循环条件; 循环后操作) {
// 循环体代码
}
初始条件是在进入循环之前执行的语句,初始化循环变量的值;循环条件是在每次循环开始之前判断的条件,控制循环是否继续执行;循环后操作是在每次循环结束之后执行的操作。循环体代码是每次循环时要执行的操作。
Python的 for语句一般是对一个序列进行遍历,其语法如下:
for 变量 in 序列:
循环体代码
Python中,for循环主要用于对一个序列进行迭代遍历。在for语句中,可以使用一个变量来依次表示序列中的元素,并在每次循环迭代时执行循环体代码。
C++ 和Java 中都没有类似于Python 和JavaScript 的for-in 语句
Python的for-in语句
语法如下:
for 变量 in 字典:
循环体代码
以下代码使用Python的for-in语句遍历字典的键和值:
my_dict = {"name": "Alice", "age": 25, "city": "New York"}
遍历字典的键
for key in my_dict:
print(key)
遍历字典的值
for value in my_dict.values():
print(value)
遍历字典的键值对
for key, value in my_dict.items():
print(key, value)
需要注意的是,在Python中,for-in语句会按照字典的键的顺序进行遍历,但是字典的键值对的顺序是无法保证的。
JavaScript的for-in语句
在JavaScript中,for-in语句可以用于遍历对象的可枚举属性(包括自有属性和继承属性)。语法如下:
for (var 变量 in 对象) {
// 循环体代码
}
以下代码使用JavaScript的for-in语句遍历一个对象的属性:
var person = {name: "Alice", age: 25, city: "New York"};
// 遍历对象的属性
for (var key in person) {
console.log(key + ": " + person[key]);
}
需要注意的是,在使用for-in语句遍历对象属性时,可能会遍历到一些不需要的属性,比如对象原型链上的属性。为了避免这种情况,可以使用Object.hasOwnProperty()方法判断属性是否为对象自有属性。例如:
for (var key in person) {
if (person.hasOwnProperty(key)) {
console.log(key + ": " + person[key]);
}
}
这样就只会遍历对象自有属性。
C++ 、Java 和JavaScript 中的switch 语句
C++、Java和JavaScript中的switch语句的基本结构非常相似,语法如下:
switch(expression)
{
case value1:
// 代码块
break;
case value2:
// 代码块
break;
...
default:
// 代码块
}
其中expression是一个条件表达式,用于确定要执行哪个分支。每个分支由一个case标签和相应的代码块组成,表示与特定值匹配的情况。如果匹配成功,则执行相应的代码块,并且可以使用break关键字来终止switch语句的执行,避免进入下一个分支。如果没有任何一个分支匹配成功,则可以使用default标签定义一个默认分支,以处理未匹配的情况。
Python中没有 switch 语句。