Запустила бесконечный цикл на своем ведре - вырубился свет во всей деревне. Сейчас к нам едут военные из соседнего города, говорят, будут ликвидировать особо опасного хакера. Уроком довольна, спасибо!
Для тех у кого как и у меня возник вопрос "какого else не в одной строке с IF?" Пришлось погуглить отдельно и нашел на хабре. Это короткая статья для новичков. Наверняка вы знаете, что в пайтоне для циклов for и while предусмотрен блок else. И с этим блоком возникает много путаницы, потому что его действие на первый взгляд неинтуитивно. Приходится тратить немного времени или заглядывать в документацию каждый раз, когда он встречается: for f in files: if f.uuid == match_uuid: break else: raise FileNotFound() Когда будет исключение: когда файл не найден? Когда найден? Когда список пуст? На этот вопрос сложно ответить, потому что блок else находится на одном уровне с блоком for и кажется, что это какое-то условие, относящиеся к самому списку; например, когда for не нашел ни одной записи. Но достаточно знать главный секрет блока else для циклов, чтобы больше никогда не терять на это время: Блок else после циклов относится не к самому циклу, а к оператору break! И действительно, блок else выполнится в любом случае, если только выполнение цикла не было прервано оператором break, return или raise. Если читать пример выше так: «если файл имеет нужный нам uuid, то закончить цикл, иначе вызвать исключение», то все становится на свои места.
Привет! Слушай, у тебя крутые курсы, но было бы неплохо, если бы ты объяснял, в каких случаях можно было бы использовать циклы, условия, и так далее. Имеется в виду на реальном примере (не обязательно практическом). К примеру ты пишешь какую-нибудь игру или приложение и объясняешь, как именно можно использовать эти штуки, так как гуманитариям вроде меня довольно сложно понимать это
❤🔥💋💋💋💋😈😈😈😈😮👴🏿 сам разберайся это тебе не курс за который ты платишь своей почкой!! скажи спасибо что кто-то это вообще делает бесплатно❤🔥❤🔥💋💋💋😈😈😈👿👿👿☠💀☠👺👺💩
Приучай себя смотреть на скорости 1,5 Х 2Х,быстрее начнешь материал усваивать ,скорость восприятия информации увеличится ,и меньше будешь тратить время на просмотр видео ! @@user-vp1hk7lv6y
Я не сразу понял про for, пришлось погуглить Это от foreaсh, то есть для каждого for item in collection: # do something То есть для каждого предмета tem из набора collection выполнить действие, и с каждым витком цикла(итерацией) в качестве объекта для какого-нибудь действия будет использоваться определённое значение из последовательности collection
Спасибо за уроки! Сегодня начал изучать Python. После этого урока решил устроить себе практику и написать програмку, которая определяла бы, простое или составное число ввёл пользователь. Всё получилось)
@@ЮтубШредингера Привет! Посмотрел эти уроки до конца, переводил числа из десятичной системы счисления в двоичную и вычислял день недели по дате. Успел ЕГЭ сдать и на программиста в вузы подать. Потом начал проходить курс на stepik для более углублённого изучения питона, вот сейчас пишу решение произвольного квадратного уравнения
Я думаю что, переменное found присваивало False потому, что цикл все равно продожалось после нахождение "L", когда находило " L" переменное присваивало True но, так как цикл не закончился и он дальше шел до последнего, а последний это "O" вот и сохранил False
Сентябрь 2024 год Цель на первый год: Изучить основы, алгоритмы, библиотеку Django (хочу попробовать себя в Backend разработке сайтов), устроиться на работу хотя бы на вакансию джуна. Уже ознакомился с данным курсом и всеми видеоуроками в нем и решил что буду изучать питон у данного автора.
Ошибки нет, тк в Python блок else после цикла for выполнится только в случае, если цикл завершился естественным образом, то есть без использования оператора break. То есть блок else после цикла for предназначен для выполнения кода в случае, когда цикл завершается без досрочного прерывания. Если во время выполнения цикла был использован оператор break, то блок else не будет выполнен. Возможно, автор ошибся и не сделал отступ, возможно сделал это намеренно.
@@alexandrFedorovich7168 Немного неточно ты написал. Для циклов for и while тоже можно использовать else(если быть точнее, то else относится именно к break. Если не сработал break, сработает else). Если сделать отступ на else, тем самым поместив его под if, то переменная на каждое прохождение цикла будет прописывать значение False в переменную found до того, пока не нарвется на break.
Привет! 14:00 Скажи, почему ты else ставишь на одном уровне с for? Ведь вроде он должен относиться к if, и в таком случае break не понадобится. или я что-то не правильно понял?
Если кому то интересно вот маленький опрос вот его код: print ("Тест") num1 = int(input("2+2: ")) num2 = int(input("37-75: ")) num3 = int(input("73+97: ")) print("Ваш ответ :",num1) print("Ваш ответ :",num2) print("Ваш ответ :",num3) input ("Надеюсь что у вас всё правильно как вы думаете: ") print("2+2 Правильный ответ 4 ") print("37 Правильный ответ 21 ") print("73+97 Правильный ответ 170 ") input ("Тест окончен да или нет: ")
14:37 В примере с True и False непонятно почему при выполнении условий if, следом выполняется условие else... Они вроде взаимоисключающие - else выполняется только в том случае, если не выполнено условия if, а в этом примере оно выполняется. В чём подвох?
В том что дано слово hello, цикл ищет букву "l", а в первой итерации цикла стоит буква "h", соответственно выполняется условие else. На следующей итерации уже буква "e", тоже не подходит значит выполняется else, вот на 3 и 4 уже выполняется if, значит в этом случае переменная found получает значение True, но так как нет никакой остановки, а остановка цикла это break, то выполняется следующая итерация, а там уже буква "o" и она не подходит в условии if и исполняется условие else, значит значение переменной found устанавливается False
Мне кажется так бы было более корректно оформить последний пример:? slovo = input("Введите слово: ") bukva = input("Введите букву которую ищем: ") found = 0 for i in slovo: if i == bukva: found += 1 print ("В слове:", slovo, "буква:", bukva,"встречается:", found, "раз.")
# Поиск заданной буквы в тексте text = input('Введите текст, в котором нужно выполнить поиск: ') finding_letter = input('Введите искомую букву: ') count = 0 for i in text: if i == finding_letter: count += 1 print('Количество букв "', finding_letter,'" в заданном тексте: ', count, sep='')
while True: a = int(input("Первое число: ")) print("Выбираем выражение: ") print("1 = '+' 2 = '-' 3 = 'exit'") while True: cd = input("Введите операцию: ") if cd in ('1', '2', '3'): break else: print("Повторите еще раз")
if cd == '3': print("Удачи вам!") break b = int(input("Второе число: ")) if cd == '1': summa = a + b elif cd == '2': summa = a - b
print("Ваша (сумма):", summa) cl2 = float(input("(Сумма) к которой нужно прибавить или отнять: "))
while True: gh = input("Прибовляем или отнимаем 1 = '+' 2 = '-' +/- (1 или 2): ") if gh in ('1', '2'): break else: print("Повторите операцию.") cl = float(input("Диапазон примеров: ")) for suma_a_b in range(int(cl)): if gh == '2': summa -= cl2 print(summa + cl2, f"- {cl2} =", summa) if summa < 0: print("Конец.") break if gh == '1': summa += cl2 print(summa - cl2, f"+ {cl2} =", summa) if summa < 0: print("Конец") break
1:20 заметила, что если при выводе взять переменную i в кавычки (у автора без кавычек), то переменная будет выводиться не как цифры от 0 до 5, а как символ i, 6 раз: for i in range(6): print("i") i i i i i i
Почему когда мы написали break, который по отступам подходит к условию if, он сработал для цикла for, и else не выполнилось? Короче, пока писал вопрос, походу понял, что на каком бы отступе тот брейк не стоял, он прекратит работу цикла, в котором он написан, верно?
8:00 если к переменной ничего не добавлять и запустить то число которое было указано в переменной будет бесконечно.Чтобы решить проблему нужно сделать команду:переменная (любая которую вы указали) += 1.
@@cyberpunk8156 в vs code есть кастомизатор где и можно менять цвета текста. Незнаю зачем я тебе это пишу через 2 месяца, как твои успехи в программировании ? Многие после пары уроков сливаются
Про совмещение else и циклов можно было более развёрнуто рассказать... а то начинающим объясняли сперва что else может использоваться в связке с if и elif при проверке условий, а тут взяли из воздуха и вставили не пойми к чему... А самое главное, что использование else в циклах - это особенность языка Python... многие языки такое не поддерживают! Сам начал недавно заниматься на платформе stepik и параллельно смотрю твои уроки, в итоге хорошее дополнение друг другу получается)
@@itproger чувак, он правильно замечание сделал, ты просто взял фичу языка из воздуха и применил, не объясняя за нее ничего. Мне как плюсовику вообще не понятно было в конце какого хера else находится в теле цикла, а не if'а
@@itproger Да, непонятно почему срабатывает else если оно должно только в противном случае работать. Поясните пожалуйста. В курсе было что else c if работает.. Спасибо вам за такие прекрасные ролики..
@@andrewdmit3793 Он имел ввиду "Как оно работает else , если находится в теле цикла, а не конструкции if else". Я тоже до этого только на плюсах довольно долго писал и мне не понятно. (посмотрите на отступы, else вообще не должен попадать в конструкцию if else)
Для тех, кто не понял, что за "шаг" делает 2 в этом коде: for i in range(4, 10, 2): print(i) оно выводит каждое 2 число, те вывод будет такой: 4 6 8 если бы там стояло 3, то там бы выводило каждое 3 число от 4, те 7 (10 не включительно).
6:09 На этом моменте немного отвлекся, и написал программу, которая ищет символ, заданный пользователем в любом тексте, и выводит частоту его появления в тексте. Есть идея сделать парсер текста по словам (тоесть группе символов), подумаю на досуге, как это сделать, скорее всего мне понадобится несколько циклов, а еще массивы, до которых я не дошел.
Для тех кто не вкурил, что вообще произошло в конце - True/False. Короче for in не зацикленно бегает по диапазону, а один раз и по порядку. В слове Hello есть две буквы l, но эти буквы находятся посередине слова. А for in "идет" и i по порядку принимает значения i='H' i='e' i='l' i='l' i='o'. И последняя буква в диапазоне - 'o'. Ну так вот - когда i принимала значение 'l', то переменной found присваивалось True (дважды). Но ПОТОМ i шла дальше (ведь ей нужно прогнаться диапазону от начала до конца) , а диапазон заканчивается буквой 'o' (и она - не соответствует условию) - поэтому в конце концов тру так и не присвоилось. А когда прописали брейк, то i принудительно выкинуло из цикла, как только он нашел букву 'l' и на этом всё остановилось. Если бы условием была буква 'o'(последняя в диапазоне, на которой заканчивается прогон) - то мы бы получили заветный True без брейка. PS1 кстати - else должен быть положен под if, а не под for. Из-за этого линтер ругается и выделил фоном переменную found. PS2 - если вы вообще else не пропишете, тогда тру будет присваиваться независимо от того в каком месте диапазона находится искомая буква, тут я сам пока не вкурил почему.
слушай, а почему у него в этом примере else на одном уровне с for? Разве он не должен быть на уровне с if? Вот этот момент не поняла... Работать работает, но почему так-то .-. По поводу PS2: переменной found без else не присваивается никакое другое значение, кроме true, которое присваивается в одном случае: видим букву l :) С этим всë ок)
должно быть так found = None for i in "hello": if i == "e": found = True break else: found = False print(found) а не так found = None for i in "hello": if i == "e": found = True break else: found = False print(found) Даже редактор подчеркивает ошибку
Я в этом примере автора тоже немного запутался. Я так понимаю, инструкцию "else" нужно было прописать для "if". Т.е. отступить 4-я пробелами. А у автора "else" прописана буд-то бы для "for".
3:30 Пожалуйста ответьте, почему "i" ? Я так и не понял причем здесь эта переменная ведь мы разбераем переменную "word" а не "i" ? Это как вообще? У меня мозг сломался 🙄
Спасибо за курс. Второй день смотрю. С нуля. Почему-то в Visual Studio с подключенным Python v2023.12.0 код: for i in range(6): print(i) выдает синтаксическую ошибку. Тот же самый код в Pydroid3 на смарте нормально срабатывает. Дело в версии Python? Опять там что-то переделали?
Объясни, пожалуйста, что это за переменная "i"? Где она была создана? Для чего? Что в ней лежит? Почему ты не объяснил это? В моей голове не складывается картинка. Почему мы в этой переменной ищем восклицательный знак, если строка, в которой мы его ищем, относится к переменной "word"?
вместо i можно использовать _, это означает что оно пустое то есть = 0, или использовать ту переменную которую ты вводил например x = int(input()), z = int(input()), то есть for x in range(z), или наоборот. Надеюсь помог
Она создается именно в этом цикле и существует в его пределах. При каждой новой итерации цикла в нее помещается следующее значение из перебираемого набора. Например если цикл у нас идет по каждой букве в слове "hello" то в переменной i поочередно будут оказываться такие значения: h, e, l, l, o. Таким образом в каждой итерации можно сравнить ее значение с тем что ищем
Это сложная тема, которую объясняют 15 минут. Дополнительного материала много нужно прочитать, плюс практические задачи порешать. Для хорошего усвоения данной темы, уйдёт не менее недели погружения. Эти уроки как поверхностный ввод в тему. Найди полноценные курсы и не ломай себе голову. Помимо платных, есть отличные бесплатные. Чтобы не было рекламой, названия не пишу, Google help you
конечно стоит и не только его уроки, учиться можно вечно, только делайте для себя определенные выводы, проверяйте, работает ли код, который выполнялся два года назад. если нет - не берите на свой счет, но, в общем-то, стоит.
Старый курс по Питону очень плохой, совершенно ничего мне не дал. Но он довольно старый, ему более 4 лет. Поэтому оптимальнее найти другие каналы. Этот курс по питону очень хороший, смотря его и параллельно 1-2 других, мне кажется, можно хорошо понять основы языка
У меня на этих курсах получилась мини-прога. Про def и time.sleep я узнал ещё давно. import time def zxc(): zxc = 1000 for _ in range(143): print(" ", zxc, "-7", sep="") zxc -= 7 time.sleep(0.02) if zxc
slovo = input("Введите слово: ") bukva = input("Введите сочетание которое ищем: ") found = 0 for i in slovo: if i == bukva: found += 1 print ("В слове:", slovo, "сочетание:", bukva,"встречается:", found, "раз.") И просто во втором вопросе запиши сочетание
Мы в 90х на ассемблере (asm просто пишешь в досе) писали циклы которые заполняли рандомные фалы нулями до упора пока место на диске не заканчивалось и файл сохранялся в епенях ))) а это были 386 SX - с малюсенькими винчестерами... только сейчас мне нашу информатичку жалко стало - бедная )) Понятно что можно было утилитой или через волков командер файл отыскать большой - но она не блестала знаниями )))
1:37 , неверно,ты выбрал 6 цифр, дестятичная система исчисления начинается с 0 -то есть 6 цифр от 0 , то есть 1 цифра будет 0 , вторая 1 , третья 2 , и так выходит что шестая цифра 5 , это не не включительно , это просто порядок числа в десятичной системе счисления , количество чисел указываемое в десятичной системе по порядку начинается с нуля ,первая цифра всегда 0 Не может быть первым числом 1 , потому что мы имеем в десятичной системе в общем 10 чисел, то есть 0,1,2,3,4,5,6,7,8,9 10 это уже выходит сочетание единицы и нуля, 10 это уже один десяток
Запустила бесконечный цикл на своем ведре - вырубился свет во всей деревне. Сейчас к нам едут военные из соседнего города, говорят, будут ликвидировать особо опасного хакера. Уроком довольна, спасибо!
+
я также сделал запустил видео дальше потом его слова "не советую запускать его" XD
+
Запустил бесконечный цикл на ноуте теперь пишу с телефона. Спасибо за урок)))
удачи с завершением цикла
хз я тоже запустил оставил на 3 минуты и все норм
если что характеристики ryzen 5 5600h rtx 3060 6gb
@@Fikus24 а причём здесь видеокарта?
@@ЮрийКудрявцев-д7г ахахах
Реально после шести уроков стал хоть что-то понимать. Спасибо
@@mstr-hq6cdсможешь калькулятор в одну строку написать?
@@Sadness27ну как ты там спустя год?
Как успехи щас?
Ооо не только я смотрю курсы сейчас @@skkaech1166
не бросил еще изучать? год прошел
9:09 пов сделал бесконечный цикл,развлекался с ним,а потом доходишь до момента,где говорят:" не нужно так делать"
•́ ‿ ,•̀
lol 🤣
я думала я одна такая, думаю что не так..
твоя ОЗУ: памагити... 😆
Топ 10 пранков в програмирование, первое место:
такая же фигня, слышал что питон очень продуман в подобных вещах и был уверен, что он не умрет. и оказался прав xD
Для тех у кого как и у меня возник вопрос "какого else не в одной строке с IF?"
Пришлось погуглить отдельно и нашел на хабре.
Это короткая статья для новичков. Наверняка вы знаете, что в пайтоне для циклов for и while предусмотрен блок else. И с этим блоком возникает много путаницы, потому что его действие на первый взгляд неинтуитивно. Приходится тратить немного времени или заглядывать в документацию каждый раз, когда он встречается:
for f in files:
if f.uuid == match_uuid:
break
else:
raise FileNotFound()
Когда будет исключение: когда файл не найден? Когда найден? Когда список пуст? На этот вопрос сложно ответить, потому что блок else находится на одном уровне с блоком for и кажется, что это какое-то условие, относящиеся к самому списку; например, когда for не нашел ни одной записи. Но достаточно знать главный секрет блока else для циклов, чтобы больше никогда не терять на это время:
Блок else после циклов относится не к самому циклу, а к оператору break!
И действительно, блок else выполнится в любом случае, если только выполнение цикла не было прервано оператором break, return или raise.
Если читать пример выше так: «если файл имеет нужный нам uuid, то закончить цикл, иначе вызвать исключение», то все становится на свои места.
спасибо!!
Спасибо за бесконечный цикл теперь это генератор паролей!
Поздравляем! Вы открыли смысл занятий в питоне!
А как вы это сделали?
@@vladkotenko9968 while true:
Print("пишем хоть что")
И вроде там можно сделать добавляет чтоб 1 но я хз как это сделать ну забыл
Где вы были раньше? Эти уроки - просто находка!
Спасибо большое, лучшие уроки для новичков!
У вас талант, вы сложные вещи объясняете на простом языке. Спасибо, вы лучший.
Я тот, кто запустил бесконечный цикл)))
🤣
Комп сгорел?
Поздравляю, ты герой
Сколько смысла в твоём коменте
А говорят нельзя сделать вечный двигатель, дураки
x=1000
for i in range(143):
x=x-7
print(x+7,"- 7 =",x)
if x
1000-7?
лютый
Либо можно:
x=1000
while x>0:
print(x, '-7', sep="")
x-=7
else:
print("Гуль, остановись")
Ты сам до этого додумался?
@@forgor2breathe или :
for i in range(1000, -2, -7):
print(i)
if i
Привет! Слушай, у тебя крутые курсы, но было бы неплохо, если бы ты объяснял, в каких случаях можно было бы использовать циклы, условия, и так далее. Имеется в виду на реальном примере (не обязательно практическом). К примеру ты пишешь какую-нибудь игру или приложение и объясняешь, как именно можно использовать эти штуки, так как гуманитариям вроде меня довольно сложно понимать это
❤🔥💋💋💋💋😈😈😈😈😮👴🏿 сам разберайся это тебе не курс за который ты платишь своей почкой!! скажи спасибо что кто-то это вообще делает бесплатно❤🔥❤🔥💋💋💋😈😈😈👿👿👿☠💀☠👺👺💩
@@yatonaru3592 если автор канала хочет большего успеха - он обязан прислушиваться к подписчикам и коммуницировать с ними, а ты пишешь какую-то хуйню
@@vacuumsplitting3143 уничтожил(а) по факту😂
@@vacuumsplitting3143 Ахахахх. Ты просто смешон XDDDD
@@vacuumsplitting3143 ты бы хотел бесплатно работать ?
Спасибо большое за урок, все очень доходчиво и просто )
Учусь у вас с удовольствием! 🥰
Большое спасибо за ваш труд. Пробно оформил месячную подписку на вашем ресурсе.
Спасибо Вам 😊
Спасибо за Ваш труд! Коммент в поддержку канала.
Ооо, спасибо! Хорошая подача материала! Доходчиво и с примерами, по началу плохо запоминаю, но если 100 раз повторить то доходит.
Ну или если бы не делал на оть..бись) тараторит так как будто его сзади с автоматом подгоняют... ставлю скорость видео на 0.75 хахаха ..жесть)
тоже самое))
Приучай себя смотреть на скорости 1,5 Х 2Х,быстрее начнешь материал усваивать ,скорость восприятия информации увеличится ,и меньше будешь тратить время на просмотр видео !
@@user-vp1hk7lv6y
Я не сразу понял про for, пришлось погуглить
Это от foreaсh, то есть для каждого
for item in collection:
# do something
То есть для каждого предмета tem из набора collection выполнить действие, и с каждым витком цикла(итерацией) в качестве объекта для какого-нибудь действия будет использоваться определённое значение из последовательности collection
Спасибо за уроки.Очень хорошо объясняете
Ура, я сделал свою первую мизерную программу по дз с сайта! Да и 1/4 данного курса за считанные часы уже пройдено )
Можно поподробнее?
Сегодня у меня тупо ветер в голове, но всё равно всё из этого урока усвоил (более менее). Спасибо!
Спасибо за уроки! Сегодня начал изучать Python. После этого урока решил устроить себе практику и написать програмку, которая определяла бы, простое или составное число ввёл пользователь. Всё получилось)
UPD: И генератор n - го количества простых чисел
Привет! Как успехи спустя 2 месяца?
@@ЮтубШредингера Привет! Посмотрел эти уроки до конца, переводил числа из десятичной системы счисления в двоичную и вычислял день недели по дате. Успел ЕГЭ сдать и на программиста в вузы подать. Потом начал проходить курс на stepik для более углублённого изучения питона, вот сейчас пишу решение произвольного квадратного уравнения
Вообще эти видео я для ЕГЭ больше и смотрел, а сейчас уже размеренно и подробно изучаю питон
Данная программа осень полезна если я хочу в большом тексте найти нужное слово, спасибо!
Это как Ctrl F в браузере)
спасибо за курсы, ясно и понятно👍👍👍
Благодарю, за идею. Ломаю комп не себе, а знакомым. Бесконечный бомбер сообщений это круто.
Автор: НЕ ЗАПУСКАЙТЕ БЕСОНЕЧНЫЙ ЦИКЛ !!!
Я: звучит как вызов...
Аааааа как это сложно но вы понятно объясняете хоть.Спасибо вам
Я думаю что, переменное found присваивало False потому, что цикл все равно продожалось после нахождение "L", когда находило " L" переменное присваивало True но, так как цикл не закончился и он дальше шел до последнего, а последний это "O" вот и сохранил False
Сентябрь 2024 год
Цель на первый год: Изучить основы, алгоритмы, библиотеку Django (хочу попробовать себя в Backend разработке сайтов), устроиться на работу хотя бы на вакансию джуна.
Уже ознакомился с данным курсом и всеми видеоуроками в нем и решил что буду изучать питон у данного автора.
Действительно понятно, лучше чем в книгах. Хотя учу другой язык уже, python паралельно.
после с++ нормально Питон залетает, на ура!
Для новичка передоз инфы А как по быстрому повторить шикарно
да нет нормально
Я вроде понимаю
15:20 почему оно работает, если else не на такой же табуляции, как if? Else и вне for выходит, и не относится к if?
Почему нет ошибки?
Ошибки нет, тк в Python блок else после цикла for выполнится только в случае, если цикл завершился естественным образом, то есть без использования оператора break. То есть блок else после цикла for предназначен для выполнения кода в случае, когда цикл завершается без досрочного прерывания. Если во время выполнения цикла был использован оператор break, то блок else не будет выполнен.
Возможно, автор ошибся и не сделал отступ, возможно сделал это намеренно.
@@alexandrFedorovich7168 Немного неточно ты написал. Для циклов for и while тоже можно использовать else(если быть точнее, то else относится именно к break. Если не сработал break, сработает else).
Если сделать отступ на else, тем самым поместив его под if, то переменная на каждое прохождение цикла будет прописывать значение False в переменную found до того, пока не нарвется на break.
Cпасибо, с интересом смотрю ваши видео, очень залипательные)
Решил задачу на сайте, но немного другим и простым способом
n1 = 34
while n1
Правильно, но ты забыл пробел перед "2".
Автору надо было просто указать диапазон с 33, что по другому не решали)
Привет! 14:00 Скажи, почему ты else ставишь на одном уровне с for? Ведь вроде он должен относиться к if, и в таком случае break не понадобится. или я что-то не правильно понял?
В питон else можно дописать к циклу. Об этом я рассказывал в уроке
Если кому то интересно вот маленький опрос вот его код:
print ("Тест")
num1 = int(input("2+2: "))
num2 = int(input("37-75: "))
num3 = int(input("73+97: "))
print("Ваш ответ :",num1)
print("Ваш ответ :",num2)
print("Ваш ответ :",num3)
input ("Надеюсь что у вас всё правильно как вы думаете: ")
print("2+2 Правильный ответ 4 ")
print("37 Правильный ответ 21 ")
print("73+97 Правильный ответ 170 ")
input ("Тест окончен да или нет: ")
Здравствуйте, а почему Else левее, чем оператор If? Разве они не на одном уровне должны быть?
а он же к не относится к выполнению тех строк вроде, он же означает что то типо такого "если это не случится то" ну типо такого вроде
14:37 В примере с True и False непонятно почему при выполнении условий if, следом выполняется условие else... Они вроде взаимоисключающие - else выполняется только в том случае, если не выполнено условия if, а в этом примере оно выполняется. В чём подвох?
В том что дано слово hello, цикл ищет букву "l", а в первой итерации цикла стоит буква "h", соответственно выполняется условие else. На следующей итерации уже буква "e", тоже не подходит значит выполняется else, вот на 3 и 4 уже выполняется if, значит в этом случае переменная found получает значение True, но так как нет никакой остановки, а остановка цикла это break, то выполняется следующая итерация, а там уже буква "o" и она не подходит в условии if и исполняется условие else, значит значение переменной found устанавливается False
Уроки просто топ!!!!я хть начал понимать что то!!!
Мне кажется так бы было более корректно оформить последний пример:?
slovo = input("Введите слово: ")
bukva = input("Введите букву которую ищем: ")
found = 0
for i in slovo:
if i == bukva:
found += 1
print ("В слове:", slovo, "буква:", bukva,"встречается:", found, "раз.")
Автор просто показал и объяснил код программы и смысл её работу, а ты ее доработал
спасибо, теперь я поняла как именно работает программа
большое спасибо! Теперь понял лучше
Спасибо большое за помощь, понял материал намного лучше
И можно дополнить :
Else not i
Print ("В этом слове нет такой буквы")
# Поиск заданной буквы в тексте
text = input('Введите текст, в котором нужно выполнить поиск: ')
finding_letter = input('Введите искомую букву: ')
count = 0
for i in text:
if i == finding_letter:
count += 1
print('Количество букв "', finding_letter,'" в заданном тексте: ', count, sep='')
while True:
a = int(input("Первое число: "))
print("Выбираем выражение: ")
print("1 = '+'
2 = '-'
3 = 'exit'")
while True:
cd = input("Введите операцию: ")
if cd in ('1', '2', '3'):
break
else:
print("Повторите еще раз")
if cd == '3':
print("Удачи вам!")
break
b = int(input("Второе число: "))
if cd == '1':
summa = a + b
elif cd == '2':
summa = a - b
print("Ваша (сумма):", summa)
cl2 = float(input("(Сумма) к которой нужно прибавить или отнять: "))
while True:
gh = input("Прибовляем или отнимаем
1 = '+'
2 = '-'
+/- (1 или 2): ")
if gh in ('1', '2'):
break
else:
print("Повторите операцию.")
cl = float(input("Диапазон примеров: "))
for suma_a_b in range(int(cl)):
if gh == '2':
summa -= cl2
print(summa + cl2, f"- {cl2} =", summa)
if summa < 0:
print("Конец.")
break
if gh == '1':
summa += cl2
print(summa - cl2, f"+ {cl2} =", summa)
if summa < 0:
print("Конец")
break
Спасибо за классный калькулятор
1:20 заметила, что если при выводе взять переменную i в кавычки (у автора без кавычек), то переменная будет выводиться не как цифры от 0 до 5, а как символ i, 6 раз:
for i in range(6):
print("i")
i
i
i
i
i
i
Можете еще взять range(6) в кавычки, тогда буква i будет выводиться не 6 раз, а 8!
for i in "range(6)":
print("i")
i
i
i
i
i
i
i
i
Почему когда мы написали break, который по отступам подходит к условию if, он сработал для цикла for, и else не выполнилось?
Короче, пока писал вопрос, походу понял, что на каком бы отступе тот брейк не стоял, он прекратит работу цикла, в котором он написан, верно?
У меня тут больше вопрос, почему элз стоит на уровне фор. Как будто вне цикла
8:00 если к переменной ничего не добавлять и запустить то число которое было указано в переменной будет бесконечно.Чтобы решить проблему нужно сделать команду:переменная (любая которую вы указали) += 1.
можешь сказать как сделать разные цвета в строке, как у него
@@cyberpunk8156 в vs code есть кастомизатор где и можно менять цвета текста. Незнаю зачем я тебе это пишу через 2 месяца, как твои успехи в программировании ? Многие после пары уроков сливаются
Про совмещение else и циклов можно было более развёрнуто рассказать... а то начинающим объясняли сперва что else может использоваться в связке с if и elif при проверке условий, а тут взяли из воздуха и вставили не пойми к чему... А самое главное, что использование else в циклах - это особенность языка Python... многие языки такое не поддерживают!
Сам начал недавно заниматься на платформе stepik и параллельно смотрю твои уроки, в итоге хорошее дополнение друг другу получается)
Так а что можно добавить про цикл и else? Все что можно про него сказать - было сказано. Больше не добавить, ведь логика и функционал его прост
@@itproger чувак, он правильно замечание сделал, ты просто взял фичу языка из воздуха и применил, не объясняя за нее ничего. Мне как плюсовику вообще не понятно было в конце какого хера else находится в теле цикла, а не if'а
@@itproger Да, непонятно почему срабатывает else если оно должно только в противном случае работать. Поясните пожалуйста. В курсе было что else c if работает.. Спасибо вам за такие прекрасные ролики..
@@andrewdmit3793 Он имел ввиду "Как оно работает else , если находится в теле цикла, а не конструкции if else". Я тоже до этого только на плюсах довольно долго писал и мне не понятно. (посмотрите на отступы, else вообще не должен попадать в конструкцию if else)
for x in range (1000,0,-7):
print(x)
спасибо за внимание
Для тех, кто не понял, что за "шаг" делает 2 в этом коде:
for i in range(4, 10, 2):
print(i)
оно выводит каждое 2 число, те вывод будет такой: 4 6 8
если бы там стояло 3, то там бы выводило каждое 3 число от 4, те 7 (10 не включительно).
Просто спаситель
Спасибо! Написал простенькую игру с паролем !
В конце видео так и не понятноо почему все таки Фолс выходит если нашлась буква L в HELLO, автоматом else не должно было сработать
15:10 Почему else за пределами блока if? Или он относится к for? Такое вообще допустимо? В моей голове не укладывается.
6:09 На этом моменте немного отвлекся, и написал программу, которая ищет символ, заданный пользователем в любом тексте, и выводит частоту его появления в тексте. Есть идея сделать парсер текста по словам (тоесть группе символов), подумаю на досуге, как это сделать, скорее всего мне понадобится несколько циклов, а еще массивы, до которых я не дошел.
Для тех кто не вкурил, что вообще произошло в конце - True/False. Короче for in не зацикленно бегает по диапазону, а один раз и по порядку. В слове Hello есть две буквы l, но эти буквы находятся посередине слова. А for in "идет" и i по порядку принимает значения i='H' i='e' i='l' i='l' i='o'. И последняя буква в диапазоне - 'o'. Ну так вот - когда i принимала значение 'l', то переменной found присваивалось True (дважды). Но ПОТОМ i шла дальше (ведь ей нужно прогнаться диапазону от начала до конца) , а диапазон заканчивается буквой 'o' (и она - не соответствует условию) - поэтому в конце концов тру так и не присвоилось. А когда прописали брейк, то i принудительно выкинуло из цикла, как только он нашел букву 'l' и на этом всё остановилось. Если бы условием была буква 'o'(последняя в диапазоне, на которой заканчивается прогон) - то мы бы получили заветный True без брейка. PS1 кстати - else должен быть положен под if, а не под for. Из-за этого линтер ругается и выделил фоном переменную found. PS2 - если вы вообще else не пропишете, тогда тру будет присваиваться независимо от того в каком месте диапазона находится искомая буква, тут я сам пока не вкурил почему.
слушай, а почему у него в этом примере else на одном уровне с for? Разве он не должен быть на уровне с if? Вот этот момент не поняла... Работать работает, но почему так-то .-.
По поводу PS2: переменной found без else не присваивается никакое другое значение, кроме true, которое присваивается в одном случае: видим букву l :) С этим всë ок)
должно быть так
found = None
for i in "hello":
if i == "e":
found = True
break
else:
found = False
print(found)
а не так
found = None
for i in "hello":
if i == "e":
found = True
break
else:
found = False
print(found)
Даже редактор подчеркивает ошибку
Я в этом примере автора тоже немного запутался. Я так понимаю, инструкцию "else" нужно было прописать для "if". Т.е. отступить 4-я пробелами. А у автора "else" прописана буд-то бы для "for".
Спасибо за уроки !
3:30 Пожалуйста ответьте, почему "i" ? Я так и не понял причем здесь эта переменная ведь мы разбераем переменную "word" а не "i" ? Это как вообще? У меня мозг сломался 🙄
я сделал программу, которая считает все простые числа от 1 до заданного включительно с помощью этого видео. Спасибо
как вы обозначили простое число?
Кааак?
спасибо большое за уроки.
Также я который запустил бесконечный цикл я создал вечный двигатель
Очень хорошо объясняете, подписался
спасибо! все супер понятно и круто! спасибо! вы супер !
Урок был так интересно👍
Поясните пожалуйста, почему else без отступа? Он типа относится не к if, а к for?
Да, верно
@@itproger если подвинуть все элс табуляцией под иф, то и там всеравно фолс
iskal iskal i k scastyu nashel tot samiy videokurs pro piton.Spasibo
планируется ли свежий курс по джанго?
word = input("Введите текст: ")
sim = input ("Введите символ:")
count = 0
for i in word:
if i == sim:
count += 1
print(count)
print("В тексте ", count, "символов: ", sim)
Как же после джавы хочется в конце ; поставить ты не представляешь
ctrl+/ быстрое комментирование (ставить решетку в выбранных строках)
Спасибо за старания, очень напоминает С+
На последнем примере оператор Else находиться не на той табуляции что и If. Означает ли это что Else читается интерпретатором как вне цыкла For?
Видео развит на части это тоже помогает.
Спасибо за курс. Второй день смотрю. С нуля. Почему-то в Visual Studio с подключенным Python v2023.12.0 код:
for i in range(6):
print(i)
выдает синтаксическую ошибку.
Тот же самый код в Pydroid3 на смарте нормально срабатывает. Дело в версии Python? Опять там что-то переделали?
тоже самое, как-нибудь решил проблему?
Объясни, пожалуйста, что это за переменная "i"? Где она была создана? Для чего? Что в ней лежит? Почему ты не объяснил это? В моей голове не складывается картинка. Почему мы в этой переменной ищем восклицательный знак, если строка, в которой мы его ищем, относится к переменной "word"?
вместо i можно использовать _, это означает что оно пустое то есть = 0, или использовать ту переменную которую ты вводил например x = int(input()), z = int(input()), то есть for x in range(z), или наоборот. Надеюсь помог
@@zariod3720 Там замесить i можно устранить любую переменную она хранит те данные поиска
Она создается именно в этом цикле и существует в его пределах. При каждой новой итерации цикла в нее помещается следующее значение из перебираемого набора. Например если цикл у нас идет по каждой букве в слове "hello" то в переменной i поочередно будут оказываться такие значения: h, e, l, l, o. Таким образом в каждой итерации можно сравнить ее значение с тем что ищем
Это сложная тема, которую объясняют 15 минут. Дополнительного материала много нужно прочитать, плюс практические задачи порешать. Для хорошего усвоения данной темы, уйдёт не менее недели погружения. Эти уроки как поверхностный ввод в тему. Найди полноценные курсы и не ломай себе голову. Помимо платных, есть отличные бесплатные. Чтобы не было рекламой, названия не пишу, Google help you
@@____-._.-_____ скажите пожалуйста хорошие бесплатные источники 😭
6:00 Выводится значение i, а не номер. Как тогда получить номер i?
Например, чтобы сделать условие, что номер буквы по порядку чётный
Так тут другое совсем. Тут i это буквы слова. И если эта буква равна той которая нам нужна, тогда мы в друю переменную плюсуем еденичку
когда взглянул на просмотры первой части программированная на Python и на последнюю часть и её просмотры понял что до конца дошли не все(
В последнем коде у тебя else стоит неправильно, она не отделяется пробелами
скажи пожалуйста стоит ли пересматривать твои старые видео уроки?
конечно стоит и не только его уроки, учиться можно вечно, только делайте для себя определенные выводы, проверяйте, работает ли код, который выполнялся два года назад. если нет - не берите на свой счет, но, в общем-то, стоит.
Старый курс по Питону очень плохой, совершенно ничего мне не дал. Но он довольно старый, ему более 4 лет. Поэтому оптимальнее найти другие каналы.
Этот курс по питону очень хороший, смотря его и параллельно 1-2 других, мне кажется, можно хорошо понять основы языка
@@andrey6552 не дал потому что знали или потому что плохо учились?
У меня на этих курсах получилась мини-прога. Про def и time.sleep я узнал ещё давно.
import time
def zxc():
zxc = 1000
for _ in range(143):
print(" ", zxc, "-7", sep="")
zxc -= 7
time.sleep(0.02)
if zxc
9:00 ЛЮБЫЕ ПРЕДУПРЕЖДЕНИЯ ДЛЯ МЕНЯ ЭТО ПРИЗЫВ К ДЕЙСТВИЮ
решил посмотреть вечером, вроде понял но мозги кипят, не зря говорят утро вечера мудренее
Я запустил бесконечный цикл на ноуте. Всё норм))) Правда ноут новый и специально по характеристикам подходит для программирования.
Тянет блокнот?)
@@Dmytrokan У тебя есть проблемы с компом? Скинуть недорогую сборку? Лично мне никто ещё не жаловался
Подскажите, как можно найти не символ, а сочетание символов с помощью оператора for ?
slovo = input("Введите слово: ")
bukva = input("Введите сочетание которое ищем: ")
found = 0
for i in slovo:
if i == bukva:
found += 1
print ("В слове:", slovo, "сочетание:", bukva,"встречается:", found, "раз.") И просто во втором вопросе запиши сочетание
@@gddotop2231 не работает так
Введите слово: шиншила
Введите сочетание которое ищем: ши
В слове: шиншила сочетание: ши встречается: 0 раз.
hi, thanks a lot for the video! It was interesting
Мы в 90х на ассемблере (asm просто пишешь в досе) писали циклы которые заполняли рандомные фалы нулями до упора пока место на диске не заканчивалось и файл сохранялся в епенях ))) а это были 386 SX - с малюсенькими винчестерами... только сейчас мне нашу информатичку жалко стало - бедная )) Понятно что можно было утилитой или через волков командер файл отыскать большой - но она не блестала знаниями )))
Какого фига даже в 90х было ассемблер, а у меня в школе вообще ничего, только рассказывали про законы логики. 0 программирования за 11 классов
print('N факториал!')
f = int(input('Введите число: '))
s = 1
for i in range (1, f+1):
print (i)
i==i+1
s = s*i
print (s)
Подскажите, зачем писать переменную i по середина for и in ?
i = "1000-7"
while not i == "15" :
print(i)
гули, берите на заметку
12:50 Ты говоришь что там числа которые не делаться на 2 без остатка, почему там не 9, если 9 / 2 = 4.5?
Спасибо большое
13:16 деление пишется как процент ?
Почему запись if i % 2 == 0: исключает четные числа?
Тоже не понял этот момент. Разве деление четного числа на 2 дает в результате 0?
думаю раза с 10 я запомню ;)
Кому нужно бесконечный цикл можно написать так
while True:
print('то что хочете')
Не проще.
i = 5
while i < 15:
i += 2
print(i)
закончится на 15.
Если написать
i = 5
while i
Курс для новичка. Раньше нормально. Но тут новичку уже реально не понятно. Где логика, как работает и что вообще происходит
Попробуй вникать и записать важные моменты и пробовать всё на практике.Я всё понимаю
for i in range(1,11):
if i == 5:
break
print(i)
Выдает 5
РАЗОБРАЛСЯ!!!
Проблема в отступах
9:09 сохранил файл и создал этот бесконечный цикл, зря)))
6:32 проще - Питон видит маленькую “w” и большую “W” как разные символы
А в видео разве не так сказали?
@@Majorov_Alexandr это для таких чайников как я
Пересматриваю второй раз. Цикл for мне не совсем понятен. While сразу понял и уже много раз применял. А вот у for есть нюансы
спасибо легенда
1:37 , неверно,ты выбрал 6 цифр, дестятичная система исчисления начинается с 0 -то есть 6 цифр от 0 , то есть 1 цифра будет 0 , вторая 1 , третья 2 , и так выходит что шестая цифра 5 , это не не включительно , это просто порядок числа в десятичной системе счисления , количество чисел указываемое в десятичной системе по порядку начинается с нуля ,первая цифра всегда 0
Не может быть первым числом 1 , потому что мы имеем в десятичной системе в общем 10 чисел, то есть 0,1,2,3,4,5,6,7,8,9
10 это уже выходит сочетание единицы и нуля, 10 это уже один десяток
14:32 но если установить значение found = True изначально, то не потребуется оператор break... Или я что-то не так понял?