Союзы As, When, While в значении «когда», «в то время как»
Союзы as, when, while используются в предложениях с придаточным времени, они похожи по смыслу и иногда взаимозаменяемы. Рассмотрим, в чем разница между ними.
As, When, While в значении «в то время как»
Эти три союза могут использоваться в значении «в то время как», то есть речи идет о двух действиях: одно произошло в то время, когда длилось другое. Фоновое действие обычно выражено в Past или Present Continuous, а действие, произошедшее, когда длилось фоновое, в Past или Present Simple.
В итоге получается схема:
- Фоновое действие, длившееся в прошлом, выражено в Past Continuous или Present Continuous.
- Действие, произошедшее посреди фонового, выражено в Past Simple или Present Simple.
When Harry was at work, someone broke into his apartment. – Когда Гарри был на работе, кто-то вломился в его квартиру.
While he was working, he usually sang his song. – Когда он работал, он часто пел свою песню. As she was posing for the photographers, her bodyguard was holding off a suspicious fan. – Когда она позировала для фотографов, ее телохранитель удерживал от нее подозрительного фаната.
Другие значения When
When может использоваться не только для обозначения одновременных действий. Есть и другие случаи, и в них уместен только when, союзы while и as для них не подходят.
Пройдите тест на уровень английского:
Узнать свой уровень
- Краткое действие в прошлом, прерывающее другое действие
I was sleeping when you called me. – Я спал, когда ты мне позвонил.
I was driving too fast, when you told me to stop. – Я ехал слишком быстро, когда вы сказали мне остановиться.
- Действия происходят одно за другим.
When I found the missing cat, I called its owners. – Когда я нашел пропавшую кошку, я позвал ее владельцев.
She told me nothing when I asked her how she was doing. – Она ничего не сказала, когда я спросил, как у нее дела.
- When используется в значении «каждый раз»
When my wife is angry, our neighbors can hear it. – Когда моя жена злится, это слышно нашим соседям.
I always want to smoke when I am nervous. – Я всегда хочу курить, когда нервничаю.
- Уточняется время (без указания даты или точного времени), в которое что-то случилось или случится
It happened when I was nineteen. – Это случилось, когда мне было девятнадцать.
I will call you when you are ready. – Я позову тебя, когда ты будешьготов.
While или As — два долгих одновременных действия
While или as могут использоваться, когда одновременно происходят два долгих действия – они выражены Past Continuous или в Past Simple.
We were playing chess as they were playing volleyball. — Мы играли в шахматы, в то время как они играли в волейбол.
As I get older, I get more optimistic. — Становясь старше, я становлюсь оптимистичнее.
Союз As — одновременные краткие действия (сопутствующие)
Союз as может использоваться также для выражения кратких действий, происходящих одновременно с другим, которые в русском языке называют сопутствующими, то есть я делаю что-то одно, в то же время делая что-то другое: иду, напевая песню; сплю, посапывая; бегу, вздыхая и т. д. В русском языке такое действие выражается деепричастием (напевая, посапывая, вздыхая – это все деепричастия).
As she was talking to Jim, she heard someone screaming. — Разговаривая с Джимом, она услышала, как кто-то кричал.
As I walked to the exit, I realized that it was locked. — Подходя к выходу, я понял, что он был заперт.
Мои карточки со словами и выражениями
Здравствуйте! Меня зовут Сергей Ним, я автор этого сайта, а также книг, курсов, видеоуроков по английскому языку.
Подпишитесь на мой Телеграм-канал, чтобы узнавать о новых видео, материалах по английскому языку.
У меня также есть канал на YouTube, где я регулярно публикую свои видео.
вложенные и бесконечные, выход по break
Важной частью структурного программированию помимо операторов условий считаются циклы. Они помогают автоматизировать последовательные задачи в программе, а именно: повторить выполнение определенных участков кода. Такая необходимость возникает достаточно часто, когда нужно сделать что-нибудь много раз, тем самым, циклы упрощают эту задачу.
Понятие циклов
В нашей жизни мы достаточно часто сталкиваемся с цикличными задачами, к ним можно отнести любые списки, будь-то: продукты, задачи на день, запланированные экзамены. И действительно, когда мы приходим в магазин, то покупаем все, что есть в нашем списке, не останавливаясь, пока не сделаем этого.
В программировании циклы позволяют повторять некоторое действие в зависимости от соблюдения заданного условия. Таким образом организуется исполнение многократной последовательности инструкций.
Есть еще несколько важных понятий, которые нужно знать:
- Телом цикла называется та последовательность кода, которую нужно выполнить несколько раз.
- Единоразовое выполнение – это итерация.
Python позволяет также создавать вложенные циклы. Так, сначала программа запустит внешний и в первой его итерации перейдет во вложенный. Затем она снова вернется к началу внешнего и снова вызовет внутренний. Это будет происходить до тех пор, пока последовательность не завершится или не прервется.
Такие циклы полезны в том случае, если нужно перебрать определенное количество элементов в списке.В Python есть только два цикла: for и while. Первый используется по большей мере в тех случаях, когда нужно написать многоуровневую программу с множеством условий.
Цикл «for»
Цикл for в Python 3 выполняет написанный код повторно согласно введенной переменной или счетчику. Он используется только тогда, когда необходимо совершить перебор элементов заранее известное число раз. Что это значит? У нас имеется список, сначала из него берется первый элемент, потом – второй и так далее, но с каждым из них совершается действие, которое указано в теле for. Примерно это выглядит так:
for [элемент] in [последовательность]: [сделать указанное]
For может содержать данные разных типов: цифры, слова и пр. Рассмотрим пример:
for i in 10, 14, 'первый', 'второй': print(i)
На экране после запуска появится такая запись:
10 14 первый второй
Для упрощения часто используется функция range(), или диапазон. В циклах она указывает на необходимое количество повторов последовательности, уточняя, какие именно элементы из списка for, нам необходимы в данный момент. В скобках может быть указано от одного до трех чисел:
- одно указывает на то, что нужно проверить все числа от 0 и до него;
- два говорят о том, что перебрать нужно все числа, находящиеся между ними;
- три числа сгенерируют список от первого до второго, но с шагом, равным третьей цифре.
Рассмотрим пример. Теоретически вы можете записать так:
for i in [14, 15, 16, 17, 18]: print(i)
Но это слишком затратно, особенно если чисел слишком много, поэтому лучше сделать так, используя указанный выше range():
for i in range(14,18): print(i)
И в первом, и во втором случае на экране появится такая последовательность:
14 15 16 17
Цикл «while»
While с английского языка переводится, как «до тех пор, как». Это достаточно универсальный цикл, он немного похож на условие if, но его код выполняется не один раз. Его условие записывается до тела цикла. После того, как оно выполнено первый раз, программа возвращается к заголовку и снова повторяет все действия. Этот процесс заканчивается тогда, когда условие цикла больше не может быть соблюдено, иными словами перестает быть истинным. Тем, что заранее неизвестно количество проверок, он отличается от предыдущего цикла for. Кстати, еще его называют циклом с предусловием.
Запись цикла while в Python выглядит так:
while [условие истинно]: [сделать указанное]
Приведем пример использования этого цикла:
count = 0 while count < 6: print(count) count += 2
Здесь переменной присваивается значение 0, после чего начинается цикл, в котором проверяется условие, чтобы число было меньше 6. В теле цикла также содержится две инструкции: первая выводит само число на экран, а вторая увеличивает его значение на два. Цикл, таким образом, выполняется, пока условие продолжает быть истинным. На экране перед вами появится следующая последовательность чисел:
0 2 4
После тела цикла можно указать else и блок операций, которые необходимо выполнить, когда закончится while.
Обычно в ней есть смысл, только если указана инструкция break, но программа работает и без последней. Посмотрим на код:
count = 3 while count < 7: print count, " меньше 7" count = count + 1 else: print count, " не меньше 7"
Переменная – 3, задается условие, что пока она меньше 7, нужно выводить ее и выражение «меньше 7», затем прибавлять к ней 1. В тех случаях, когда она уже становится равной 7, то в ход пойдет условие, указанное в else, и на экране появится, что переменная не меньше 7. В результате выполнения этого кода мы увидим:
3 меньше 7 4 меньше 7 5 меньше 7 6 меньше 7 7 не меньше 7
Инструкции break и continue
Оператор break используется для выхода из цикла Python — прерывает его досрочно. Так, если во время выполнения кода, программа натыкается на break, то она сразу прекращает цикл и выходит из него, минуя else. Это необходимо, например, если при выполнении инструкций была обнаружена ошибка, и дальнейшая работа бессмысленна. Посмотрим на пример его применения:
while True: name = input(‘Введите имя:’) if name == ‘хватит’: break print(‘Привет’, имя)
Его реализация будет выглядеть так:
Введите имя: Ирина Привет Ирина Введите имя: Алексей Привет Алексей Введите имя: хватит
После этого выполнение программы будет прервано.
Другая инструкция, которая может менять цикл, — это continue. Если она указана внутри кода, то все оставшиеся инструкции до конца цикла пропускаются и начинается следующая итерация.
В целом, не следует слишком увлекаться использованием этих инструкций.
Цикл с постусловием
Во многих других языках программирования существуют циклы с постусловием, обычно они описываются так:
- repeat [тут исполняемый код] until [условия продолжения];
- do [тут исполняемый код] while [условия продолжения];
К сожалению, в Python цикл с постусловием отсутствует!
Цикл while может стать циклом с постусловием, тогда его примерный вид будет таким:
while True: if not условие: break
Или таким:
while condition is True: stuff() else: stuff()
Так получается, что сначала дается тело цикла, а потом задается условие.
Бесконечные циклы
Бесконечными циклами в программировании называются те, в которых условие выхода их них не выполняется.
Цикл while становится бесконечным, когда его условие не может быть ложным. Например, при помощи него можно реализовать программу «Часы», которая бесконечно отображает время.
Примером реализации в Python бесконечного цикла будет такой код:
Num = 3 while num < 5: print "Привет"
Очевидно, что заданная переменная всегда останется цифрой 3, поскольку никак не задано ее увеличение, поэтому на экране просто будет появляться слово «Привет».
Зачастую цикл не должен быть бесконечным, поскольку это причина неустойчивой работы программы. Для того чтобы выйти из него, нужно нажать комбинацию клавиш: CTRL+C. При этом программы, из которых нет выхода, также существуют. К ним относятся: операционные системы, прошивки микроконтроллеров.
Вложенные циклы
Рассмотрим вложенные циклы в Python. Для реализации можно использовать как вложенные for, так и while.
Про них мы уже писали выше. Здесь же хочется привести пару примеров использования. Они очень часто используются при обработке двухмерных списков.
Вот пример создания двумерного списка и вывода его на экран с помощью print.
d = [[1,2,3],[4,5,6]] for i in range(2): for j in range(3): print(d[i][j])
Нельзя с помощью одного break в Python выйти сразу из двух циклов. В этом случае нужно во внешнем цикле создать условие следующим образом.
toExit = False while True: while True: toExit = doSomething() if toExit: break if toExit: break
Здесь приведен пример использования в Python цикла в цикле. Оба бесконечны. Все будет выполняться бесконечно, до тех пор, пока функция doSomething не вернет True. После этого поочередно сработают break во внешнем и во внутреннем циклах.
Заключение
Как правило, команды в коде выполняются последовательно: одна за другой. Именно поэтому, когда есть необходимость выполнить тело кода несколько раз, используются циклы. Циклы для Python очень значимы, именно они делают повторение простым, логичным и очень понятным.
Разница между циклом for и while в python
- Автор сообщения: Naina pal
- Сообщение опубликовано: 10 августа 2020 г.
- Категория сообщения: КУРС ПИТОНА
Это еще одна часть предыдущего поста «какие 3 типа циклов в Python | for в python с условием» и еще один учебник по языку программирования python для начинающих, который предоставляется AIDM, который считается лучший институт обучения питонов в Дели .
В языке программирования Python операторы итерации, цикл for, цикл while и цикл do-while, позволяют повторять расположение инструкций до тех пор, пока условие не станет истинным, и заканчиваются, когда условие становится фиктивным. Условия в операторах итерации могут быть предопределены, как в цикле for, или открытыми, как в цикле while.
Предлагается несколько вариантов цикла for в python для повышения его применимости, силы и адаптивности. Например, цикл for позволяет нам использовать более одной переменной внутри цикла, чтобы управлять им, а также использовать функцию сходимости с циклом for. И наоборот, с циклом while мы не можем использовать многочисленные варианты, которые должны использоваться со стандартной структурой языка.
Было бы хорошо, если бы вы сами изучили курс Data Science в Дели , присоединившись к обучению Django в Дели
For Loop
For loop позволяет программисту выполнять последовательность операторов несколько раз, это сокращает код, который помогает управлять переменными цикла.
Цикл While
Цикл While позволяет программисту повторять один оператор или группу операторов для условия TRUE. Он проверяет условие перед выполнением цикла.
Существуют некоторые существенные различия между циклами for и while, которые поясняются далее с помощью сравнительной таблицы.
Другая база для сравнения | Для | Пока |
---|---|---|
Объявление | for(initialization; condition; iteration){ //тело цикла for} | while (условие) { операторы; //тело цикла} |
Формат | Позволяет выполнять инициализацию, проверку условий и операторы итерации записываются в начале цикла. | Разрешает инициализацию и проверку условий только в начале цикла. |
Условие | Повторяется бесконечное время, если условие не задано. | Показывает ошибку, если условие не задано. |
Инициализация | Если инициализация выполняется один раз, если цикл for, то она никогда не повторяется. | Если инициализация выполняется во время проверки условия, то она требуется каждый раз, когда цикл выполняет сам себя. |
Оператор итерации | Поскольку оператор итерации написан вверху, он будет выполняться только после того, как будут выполнены все операторы. | Оператор итерации можно разместить в любом месте синтаксиса цикла. |
- Инициализация, условная проверка и увеличение или уменьшение выполняются во время выполнения итерации в цикле for. в то время как, с другой стороны, можно выполнить только инициализацию и проверку условий в синтаксисе.
- Цикл For используется, когда нам известно количество итераций во время выполнения. с другой стороны, в цикле while мы можем выполнить его, даже если нам неизвестно количество итераций.
- Если вы забыли поместить условный оператор в цикл for, он будет повторять цикл бесконечное количество раз, но если вы забыли поместить условный оператор в цикл while, он покажет вам ошибку.
- Синтаксис в цикле for будет выполняться только тогда, когда оператор инициализации находится в начале синтаксиса, но в случае цикла while не имеет значения, находит ли оператор инициализации где-либо в синтаксисе.
- Итерация будет выполнена, если выполняется тело цикла. напротив, оператор итерации в цикле while может быть записан в любом месте синтаксиса.
Циклы for и while являются операторами итерации, но оба имеют свои особенности. Цикл for имеет все свои объявления (инициализация, условие, итерация) в верхней части тела цикла. И наоборот, в цикле while только инициализация и условие находятся в верхней части тела цикла, а итерация может быть записана в любом месте тела цикла.
Если вы хотите больше узнать о языке Python, вы можете присоединиться к AIDM — одному из лучших курсов обучения Python в Дели .
Рекомендуемый блог:
- Система счисления, случайный модуль, математическая библиотека, десятичная дробь в языке программирования Python
- Работа с переменными и типами данных и поведение на языке Python язык python
- Как использовать кастинг и строку в python
- Use of Boolean Datatype and Python Operators
- Use case of the tuple in python difference between list and tuple
- Python Sets And Dictionaries Python Lists, Python Sets & Dictionary
Spread the love
Разница между WHILE и WHEN — Espresso English
Узнайте больше о курсах Espresso English
Привет, ученики, это Шайна, ваш учитель с espressoenglish.net. Сегодня я собираюсь ответить на очень хороший вопрос студента, который спросил о разнице между и и , когда , потому что они, похоже, означают одно и то же. Мы используем while и when, когда два события происходят одновременно.
Прежде чем я начну, я надеюсь, что вы смотрите меня сегодня в прямом эфире. Если вы здесь и смотрите этот урок, пожалуйста, поставьте лайк, чтобы я знал, что вы смотрите. Хорошо. Это действительно хороший вопрос о , в то время как и , когда и мне действительно пришлось провести некоторое исследование и немного подумать, чтобы дать вам четкий ответ.
Два одновременных непрерывных действия = whileПозвольте мне объяснить, мы используем while и , когда когда два события происходят одновременно. Теперь, когда у нас есть два непрерывных действия, происходящих одновременно, мы обычно используем while. Сейчас снимаю видео, пока муж работает. У нас два непрерывных действия, я записываю, а муж работает. Снимаю видео, пока муж работает.
Или вот пример из прошлого, прошлой ночью я смотрел телевизор, пока мой отец спал. Опять же, у нас есть два непрерывных действия. Я смотрел телевизор, а мой отец спал. Я смотрел телевизор, пока мой отец спал. С двумя непрерывными действиями мы обычно используем while.
Два отдельных действия в одно и то же время / одно сразу за другим = когдаТеперь, когда у нас есть два отдельных действия, которые происходят одновременно или одно происходит сразу после другого, тогда мы склонны использовать когда. Например, я поднял трубку, когда он зазвонил. Сначала зазвонил телефон, и тут же я взял трубку.
Как видите, у нас есть два глагола в простом прошедшем времени, а не в длительном. Зазвонил телефон, и я взял трубку. Я подняла трубку, когда он зазвонил. У нас есть два отдельных действия, которые произошли очень близко друг к другу, почти в одно и то же время, поэтому мы используем вместо .
Другой хороший пример: когда я прихожу домой, я снимаю обувь. Это также два отдельных действия. Я прихожу домой и снимаю обувь. Когда я прихожу домой, я снимаю обувь. Или можно сказать по-другому, я снимаю обувь, когда прихожу домой.
И while, и when используются, когда два события происходят одновременно, но мы склонны использовать , когда с двумя непрерывными действиями, и , когда с двумя одиночными действиями.
Возраст = когдаМы также используем , когда с возрастом. Например, я получил водительские права, когда мне было 16 лет. Мы бы не сказали, пока мне было 16 лет. Или я впервые поехал в Бразилию, когда мне было 19. Когда у вас есть возраст, используйте когда.
У меня также может быть продолженный глагол. Например, когда мне было 25, я работал в Нью-Йорке. Там у меня непрерывное действие, но поскольку я говорю о конкретном периоде времени, когда мне было 25, я использую when, а не while. Я работал в Нью-Йорке, когда мне было 25 лет.
Одно действие, одно непрерывное действиеТеперь все становится немного сложнее, когда у вас есть два действия, но одно из них однократное, а другое непрерывное. Это может быть такой пример: «Он позвонил , пока или , когда я спал». Теперь у нас есть одно непрерывное действие, и у нас есть одно единственное действие (он позвонил). Ну, в этом случае вы можете использовать любой из них. Вы можете сказать, что он звонил, пока я спал, или вы можете сказать, что он звонил, когда я спал. Они оба правильные. Хорошо.
Обычно мы делаем это во время или когда перед непрерывным действием. Но если я меняю предложение и слово стоит перед одиночным действием , тогда я использую , когда , а не пока.
Если я скажу: «Я спал , когда он позвонил», то я должен использовать , когда , потому что это предшествует одному действию. Но если слово стоит перед непрерывными действиями и у нас есть одно время и продолженное, то я могу использовать либо одно, он звонил, пока я спал, либо он звонил, когда я спал.
Другим хорошим примером этого может быть ситуация, когда вы едете домой с работы и попадаете в аварию. Вы можете сказать: «Я попал в аварию (это единственное действие) , когда я ехал домой, или , когда я ехал домой». Оба правильны.
Но если мы изменим предложение, то мы скажем: «Я ехал домой с работы , когда я попал в аварию», потому что , когда в этом случае стоит перед одиночным действием.
Мне бы хотелось увидеть, как вы попробуете эти слова, оставив комментарий, используя либо while, либо when, либо и то, и другое. Оставьте комментарий, и я дам вам знать, если это правильно.