Сравнение JavaScript и Python: циклы и операторы if-else
Вслед за моей последней записью в блоге, в этой статье мы продолжим сравнение JavaScript и Python. На этот раз мы рассмотрим циклы и операторы if-else.
Пока циклы
В JavaScript циклы while имеют условное выражение (содержащееся в круглых скобках) после ключевого слова while, за которым следует блок кода, заключенный в фигурные скобки.
Аналогично, в Python за ключевым словом while следует условный оператор (без круглых скобок), за которым следует двоеточие. Блок кода следует за двоеточием после отступа (без фигурных скобок).
//JavaScript let x = 10 while(x > 1) { console.log(x); x--; } #Python x = 10 while x > 1: print(x) x -= 1
Для цикла
Мы будем использовать циклы for-of и for-in для JavaScript. В JavaScript цикл for-of можно использовать со строками и массивами. Цикл for-in используется с объектами. За ключевым словом for следует переменная in/of итерируемого оператора (строка, массив, объект), заключенная в круглые скобки, за которым следует блок кода, заключенный в фигурные скобки.
В Python цикл for in используется для перебора строк, списков или словарей (примеры списков и словарей см. в предыдущей записи блога). За ключевым словом for следует переменная в итерируемом операторе (без круглых скобок), за которым следует двоеточие, а затем блок кода (без фигурных скобок).
// JavaScript (Strings) let str = 'hello'; for(let letter of str) { console.log(letter); } // or for(let letter of str) { console.log(letter); } # Python (Strings) str = 'hello' for letter in str: print(letter) # or for letter in str: print(letter) // JavaScript (Arrays) let arr = [1, 2, 3]; for(let num of arr) { console.log(num); } # Python (Lists) list = [1, 2, 3] for num in list: print(num) // JavaScript (Objects) let obj = { one: 1, two: 2, three: 3 }; for(let key in obj) { console.log(key, obj[key]); } # Python (Dictionaries) dict = { 'one': 1, 'two': 2, 'three': 3 } for key in dict : print(key, dict[key])
Заявление «если-иначе»
Для сравнения мы будем использовать оператор Else-If для JavaScript и оператор Elif для Python. В JavaScript за ключевым словом if следует условный оператор, заключенный в круглые скобки, за которым следует блок кода, заключенный в фигурные скобки. Ключевые слова else if следуют за фигурными скобками, за ними следует еще один условный оператор и последующий блок кода. Оператор закрывается ключевым словом else и последним блоком кода (заключенным в фигурные скобки.
В Python за ключевым словом if следует условный оператор (без круглых скобок), за которым следует двоеточие и блок кода (без фигурных скобок). Ключевое слово elif следует на следующей строке с сопровождающим условным оператором, двоеточием и блоком кода (опять же без скобок и фигурных скобок). Ключевое слово else следует на следующей строке с другим двоеточием и блоком кода.
// JavaScript let x = 5; if(x > 10) { console.log("x is bigger than 10"); } else if(x < 10) { console.log("x is less than 10"); } else { console.log("x equals 10"); } // or let x = 5; if(x > 10) { console.log("x is bigger than 10"); } else if(x < 10) { console.log("x is less than 10"); } else { console.log("x equals 10"); } # Python x = 5 if x > 10 : print("x is bigger than 10") elif x < 10 : print("x is less than 10") else : print("x equals 10") # or x = 5 if x > 10 : print("x is bigger than 10") elif x < 10 : print("x is less than 10") else : print("x equals 10")
Вывод
Python и JavaScript имеют очень похожую структуру циклов и условных операторов (if-else). Основным отличием является наличие скобок и фигурных скобок в JavaScript и наличие двоеточия в Python. Я признаю, что хорошее знание JavaScript сделало изучение Python более быстрым и легким.