Половину прошла, осталось столько же. Только сложность повыше ) Большое спасибо за возможность учиться. Рада, что нашла вас на ютубе
@olegkomlev2 жыл бұрын
Если мы хотим создать пустое множество, а потом добавлять в него значения (например, с клавиатуры или из файла или путем вычисления), то такой путь будет ошибкой: a={ } # это не пустое множество! a.add(5) Выдает ошибку "AttributeError: 'dict' object has no attribute 'add' Потому что a={ } не создает пустое множество, а создает пустой словарь. Пустое множество создается при помощи set() a=set() # пустое множество a.add(5) # добавим в множество элемент
@techroniin4429 Жыл бұрын
Интересно, спасибо
@B_T-j2w9 ай бұрын
ааа так вот зачем set
@onlyql6 ай бұрын
Спасибо, друг)
@Andy5642 ай бұрын
когда с комента понял больше чем с видео
@Someone_Game999 Жыл бұрын
Огромная вам благодарность! Серьёзно, такие курсы, как это видео, стоят бешеные деньги. Огромное спасибо за ваш труд!
@wellstuff36810 ай бұрын
пишете полную чушь)) это не видео по какой-то технологии типо Селери, а базовые понятия о базовых типах данных. в курсах за "бешенные деньги" не дают ничего того, чего нет в открытом доступе. этим сообщением не приуменьшаю заслуг автора
@БерікЕкуза5 ай бұрын
@@wellstuff368вы наоборот увеличили заслугу автора, если сами заново перечитаете😅 а так за бешеные деньги и учать основу… оффлайн.
@Roma.xАй бұрын
Я начинающий, смотрю это уже вторую неделю очень помогает, спасибо огромное! ТАК ДЕРЖАТЬ!
@TheTykVa2 жыл бұрын
Для чего нужен метод pop(), удаляющий первый элемент во множестве, если в нем априори нет первого элемента. По сути он удаляет рандомный элемент.
@VitaliyZlobin Жыл бұрын
Гоша оговорился, множество не первый элемент удаляет, а рандомный, при этом он этот элемент ещё и возвращает. Допустим нужно перебрать множество: в цикле получаем очередной элемент в переменную с помощью метода pop(), при этом удаляем его из множества, затем с этой переменной проделываем какую-то работу(пишем в базу, например) и переходим к следующему элементу множества.
@DiasAmanzhol-fq5kb10 ай бұрын
Тогда, можно использовать remove()
@wellstuff36810 ай бұрын
@@DiasAmanzhol-fq5kb для ремува нужно знать значение, тогда как попа этого не требует
@MalkiaMmoja2 жыл бұрын
Благодарю за урок! Правда, я пока не представляю, как эти множества применять на практике, но надеюсь, что со временем разберёмся.
@yoyozhik2 жыл бұрын
поясняю: скорее всего будет удобно, если, например нам понадобится сайт, типо спортмастера, где надо будет спросить у человека, каким видом спорта он увлекается. И он, допустим, несколько раз напишет "футбол" и чтобы сильно не нагружать алгоритм, он просто отсеивает повторяющиеся элементы
@БтгВвд2 жыл бұрын
@@yoyozhik спасибо, так даже можно в некотором роде экономить память на сервере сайта.
@wellstuff36810 ай бұрын
@@yoyozhik существует валидация данных пост запроса которая решает эту проблему, плюс на практике юзеру предпочтительнее разрешать выбирать из существующих видов спорта дабы он не сохранял слово писюн в ваш фрозенсет))
@qazmko212 Жыл бұрын
Спасибо вам большое, благодаря вам я закрыла сессию на 5 и начала хоть что-то понимать в этом языке программирования 💖
@ultrarin76293 ай бұрын
Закрыла сессию, но при этом Тимур?
@deathgun1642 Жыл бұрын
Спасибо вам, благодаря вам начал понимать этот язык программирования!
@dmitry.masalskiy Жыл бұрын
Спасибо за Ваш труд, уважаемый автор! Очередной урок пройден.
@Lari20253 ай бұрын
3:18 Грамотей! В случае если элементы в множестве типа int или float они ВСЕГДА выводятся в порядке возрастания!
@ИгорьКроха-м2жАй бұрын
Не всегда. Сорри бро, но ты ошибся. Проверь пожалуйста! data = {3, 4, 6, 13, 2233, 9} print(data) Результат будет таким: {3, 4, 2233, 6, 9, 13}
@turkpenbai61176 сағат бұрын
@@ИгорьКроха-м2ж результат = {3, 4, 6, 9, 13, 2233}
@Burovasofia Жыл бұрын
спасибо за урок. шаг за шагом смотрю все уроки.
@Enorxes Жыл бұрын
Спасибо за видео урок!
@SRUL02 ай бұрын
Ты гениальный лектор.
@NuHashik Жыл бұрын
В с случайном порядке идут только строки, а цифры в порядке возрастания, а также не уточнил, что команда add добавляет в начало множества.
@Михалыч-ы5ь11 ай бұрын
не всегда в порядке возрастания
@ИгорьКроха-м2жАй бұрын
потестил. Нифига не всегда добавляет в начало.
@alexey1242 жыл бұрын
интересный момент, что все таки множество нельзя использовать для "перемешки", у меня оно наоборот упорядочило числа: i = 4 data = {3, 2, 1,"seeet"} while i < 22: data.update([i]) i += 1 print (data) Всегда выводит в строгом порядке от 1 до 21, только строка "seeet" скачет-туда сюда, а 3, 2, 1 (так же как и 2, 3, 1) он переворачивает в 1, 2, 3 Я Python знаю только из видео автора, хотелось бы комментарий от него на этот счет, чтобы уже закрыть этот не укладывающийся в представление о множестве вопрос.
@dim4ik7422 жыл бұрын
Согласен
@_alexandr_sk Жыл бұрын
Начиная с python 3.7 словари стали упорядоченными
@azizbekmurodov2450 Жыл бұрын
Может быть дело в том что вы создали цикл и поставили туда множества а цикл всегда начинает с меньшего и идёт до большего поэтому хотя вы поставили множества она входит в цикл и принимает вид цикла
@stylebender1905 Жыл бұрын
@@azizbekmurodov2450 wtf duuude?
@ИльяРепин-ж2щ10 ай бұрын
спасибо вам за уроки) захотелось начать программировать
@daniilchuprin Жыл бұрын
Благодарю, очень толково разсказано
@alekssaf39262 ай бұрын
Python ещё и обзывается. Ему написали “Hello”, он ответил “l.o.h.e” 🤣
@sanjimederbekov76306 ай бұрын
Благодарю, залпом пересмотрел вам курс теперь пересматриваю, чтобы практиковаться. Сам записался на оффлайн курс у себя в городе и сегодня собираюсь сдать тест, чтобы сразу перейти на 2-й месяц, так как весь первый месяц обуения по их программе я уже здесь узнал)) Но в этом видео появился вопрос: 7:04 - я заметил, что числа не перемешиваются, а наоборот статично стоят отсортированные от меньшего)) Как их "зашаффлить"? )
@AnderPython-tw3kp Жыл бұрын
Что-то мне подсказывается, что множество наоборот сортирует список или кортеж. А вот именно символы строки располагает хаотично)
@lievsey Жыл бұрын
Попробуй несколько раз выполнить программу - будет произвольный порядок
@ИгорьКроха-м2жАй бұрын
@@lievsey нет не будет. Если будешь 1 и тот же список тусовать, ничего не изменится
@CreeperWithDynamite4 ай бұрын
Круто что они существуют, а зачем они нужны? где их можно использовать?
@овсехдвижках Жыл бұрын
Спасибо за труд!
@winaredwindows67042 ай бұрын
вместо update можно написать "|" set3 = set1 | set2 если хоти создать множество объединяя эти элемент или же если хотим изменить текущее множество то set1 |= set2 также эти функции заменяются этими симловами кому слова сложно запомнить - & | ^ . discard удоляет элемента без выдование ошибки заменяя remove. знак & выводит общие элементы знак - удоляет из текушего множества элементы такиеже элементы что и вдругом множестве ну пробуйте сами дальше
@Calmasastone Жыл бұрын
Спасибо за видео!
@anderpython Жыл бұрын
Почему в хаотичном, если при выполнении программы определенная сортировка все-таки есть??!! Например: True всегда встаёт между 0 и 2, а например 'str' располагается в конце множества..!!!
@apav7 Жыл бұрын
Если вводить только цифровые значение, то они не в случайном порядке, а в порядке возрастания. Так что они у Вас не "случайно" так встали
@Михалыч-ы5ь11 ай бұрын
не всегда в порядке возрастания
@firo97157 ай бұрын
Множество не гарантирует сортировку цифровых значений в порядке возрастания. Можешь проверить это, добавив в множество какие-либо новые значение, например: 55555. Я сам не особо понял как там всё это устроено, но кажется это как-то связано с хэш-функцией.
@ДмитрийКириллов-ю4ъ Жыл бұрын
data = {3,4,6,13,2233,9} print(data) Почитав комментарии понял, что все должно вставать по возрастанию, но почему 2233 встает вообще по середине?..
@Михалыч-ы5ь11 ай бұрын
вроде как порядок случайный,автор так говорит
@quentindrenton Жыл бұрын
Я буду тут каждый день. День 7.2
@ЭмирМалахитович2 жыл бұрын
Top
@МаксимБахтєєв-р9й6 ай бұрын
спасибо
@kedoni91236 ай бұрын
3:14 он всегда в порядке возрастания
@Redicko5 ай бұрын
В новой версии питона, скорее всего, поменяли это
@ivanwscbАй бұрын
2024 год, 36 лет, учим программирование на Python...
@mairambekduisheev9692 жыл бұрын
как сделать так что бы оно работало через инпут
@SenchosFSB11 ай бұрын
как вы комментируете весь код сразу или какую-то его часть?
@NBB-bz8vd Жыл бұрын
а в каком уроке мы до этого изучали сплит ?
@logan_Makegames10 ай бұрын
eblan
@Gill_only9 ай бұрын
Про списки урок
@addmagtech8 ай бұрын
напрягииииисссь...
@Westphaliapeace Жыл бұрын
Для чего нужно это допустим в рабочем дне программиста нужно курс писать по конкретным примерам а то слышишь, только множество списки и тд и тп зачем все это и где исполизовать
@adiletasangalukov85563 жыл бұрын
Вау
@Docere21 Жыл бұрын
почему-то когда по урокам пишу всё в pycharm то все хорошо но мне как-то удобней работать в microsoft code, но проблема в том что пишу все так же но там уже идут какие-то ошибки не могу разобраться почему так происходит!?
@ЛюдмилаВасильева-т8р17 күн бұрын
1:58 : l, o, h - пххахааххахаха😂
@AndrosovArtem2 жыл бұрын
я один не понимаю? почему множества не рандомят числа до 10?
@Pulsatil12 жыл бұрын
Та же история. И в видеоуроке числа до 10 не рандомились, а выводились в порядке возрастания. Хотелось бы услышать ответ от автора.
@EvgenijJobs2 жыл бұрын
Ну, это не совсем так. Все зависит от порядка добавления элементов в множество. Попробуйте, например, {9, 2, 1} и {1, 2, 9}. У меня вывод print({9, 2, 1}) И print({1, 2, 9}) разный. Объясняется все тем, как устроены хэш-таблицы и функция hash().
@EvgenijJobs2 жыл бұрын
Гораздо интереснее (для непосвященных) почему {1, True} == {1} =)
@gddotop22312 жыл бұрын
@@EvgenijJobs True является 1, а False 0
@olegkomlev2 жыл бұрын
Множества не предназначены для перемешивания чисел. "Случайный порядок во множестве" надо понимать "во множестве не хранится информация о порядке элементов, поэтому порядок в котором элементы печатаются или перебираются в цикле for не определен". Т.е. они могут выводится в порядке возрастания, в порядке убывания, в каком-то смешанном порядке и т.д. - это на усмотрение самого Питона. Гарантируется лишь ,что один оператор print или один оператор for обработает в каком-то порядке все элементы множества без повторений. А уж как порядок меняется или не меняется при добавлении или удалении элементов - это как удобно самому интерпретатору. Может быть даже и так , что мы ничего с множеством не делаем , а print каждый раз выводит в разном порядке (мало ли, может сборщик мусора что-то там оптимизирует в этом множестве, чтобы его легче обрабатывать).
@ОльгаРязанова-м3о11 ай бұрын
с каждым видео просмотров все меньше и меньше)
@Derek_310 ай бұрын
Во множестве элементы сортируются по возрастанию если это числа а с помощью pop() удаляет первый элемент
@ИгорьКроха-м2жАй бұрын
нифига не первый удаляется Запусти data = {1, 9, 3, 4, 5, 6, 7, 32} data.pop() print(data) Результатом будет {1, 3, 4, 5, 6, 7, 9} 32 это первый элемент?
@Евгений-л1е9ь2 жыл бұрын
клыр
@MalkiaMmoja2 жыл бұрын
лыст
@zadrod37807 ай бұрын
Просмотрел половину уроков все прекрасно понятно но забывается,придется устранять эту проблему
@techroniin4429 Жыл бұрын
В множестве можно удалить элемент и добавить но нельзя заменить элемент. На первый взгляд выглядит бессмысленно. Но интересно почему так.
@ПродуктНатуральный2 жыл бұрын
Подскажите, почему в данном примере не отображает True? date = {5, 7, 9, 1, 6, 4, 6} date.update(['stroka', True, 4.5, 3]) print(date)
@ДмитрийПарамонов-д8з2 жыл бұрын
тоже стало интересно, убрал из первого множества цифру один - и True появилось. возможно, это связано с превращением булевого типа в числовой, но конкретный механизм почему так происходит - не знаю
@takomy90332 жыл бұрын
True - это та же самая 1(False-0). А так как множества не отображают повторяющиеся элементы, то высвечивается только 1.
@ВладиславСаенко-ы5э2 жыл бұрын
@@takomy9033False - это тот же 0(True - 1). А так как множества не отображают повторяющиеся элементы, то высвечивается только False ????????????????????.
@Fabio_Fantome2 жыл бұрын
ничё не измениться если прописать: data.add(bool(True)) И с таким же успехом будет результаты если обратить его в int(), да даже в float (). Скорее всего множества не воспринимают bool как отдельный тип данных, только визуально добавляют, его просто "присваивают к стаду", а значение True = 1, напишешь False, всё добавится.
@olegkomlev2 жыл бұрын
False и True - не то же самое, что 0 и 1, но отличаются только "внешним видом" (bool построен из int изменением символьного представления, поэтому print печатает их по-разному). А для проверки неповторяемости в множестве важно не внешнее представление, а значение (хотя внешний вид тоже сохраняется). Сравните print({True,1, 1.0}) #{True} print({1, True,1.0}) #{1} print({1.0, True,1}) #{1.0} И так же сравниваются ключи в словаре: d={True:'b', 1:'i', 1.0:'f'} print(d) # {True: 'f' } print(d[1]) # f print(d[1.0]) # f print(d[True]) # f
@назарвласенко-ы5х Жыл бұрын
У меня True идёт как 1 а False не идёт ведь оно как 0
@yanavin2964 Жыл бұрын
person = { "user_1": { "name": "yan", "second_name": "avin", "country": {"RUSSIA"}, "hobbies": {"important": "lang", "others": "python"}, } } print(person["user_1"]["hobbies"]["others"]) print(person.keys("user_1")) ребят а если я хочу вывести ключи с первого пользователя как мне в принт персон кейс написать юзер один что бы он все вывел? я в посл строчке написал но питон пишет что я ошибся
@thankyou9818 Жыл бұрын
Привет. Если вопрос ещё актуален отвечу. Если ты хочешь вывести только ключи юзер_1, тогда пиши: print(person['user_1'].keys())
@yanavin2964 Жыл бұрын
@@thankyou9818 привет спасибо за ответ а можно ли вывести только все ключи от хобби например? print(person['user_1']['important'].keys()) так будет? мне ошибку пишет
@thankyou9818 Жыл бұрын
@@yanavin2964 нет. Если ты хочешь всё ключи от хобби, то тогда пишешь print(person['user_1']['hobbies'].keys()). А если ты пишешь там импотант.кейс то тогда тебе ошибку выведет, потому что импотант является сам кейсом.
@thankyou9818 Жыл бұрын
@@yanavin2964 если что-то не понял можешь задать вопрос
@alexeyantonenko877 Жыл бұрын
Спасибо. А наоборот как сделать? Преобразовать множество в список
@Ghotierr Жыл бұрын
C помощью функции list(), например. Только порядок элементов списка будет "случайный".
@FastAbsolute Жыл бұрын
Data = {2, 5, 4, 5, 1} print(Data) Run:{1, 2 , 4, 5} И так всегда при запуске. Это нормально?
@bobikbobanovich9997 Жыл бұрын
ну да
@diisspersion Жыл бұрын
да
@samorodok9327 Жыл бұрын
data = set('35914') print (data) вот так перемешивает
@backend.developer2808 Жыл бұрын
Это какая программа Python или PyCharm?
@ИльяНизарит Жыл бұрын
PyCharm
@SeraphimLUX Жыл бұрын
Это C#
@backend.developer2808 Жыл бұрын
@@SeraphimLUXнето
@furrka15 ай бұрын
Гений
@backend.developer28085 ай бұрын
@@furrka1 смысле ?
@PornerIgor3 жыл бұрын
хахахахха 2:06, LOHE -Лохи
@gddotop22312 жыл бұрын
У меня HOLE
@vaaaaavdelux3 ай бұрын
Не понимаю зачем нужно писать команды чтобы что либо добавить,ведь можно сделать это в ручную просто добавив в список новый элемент
@alekssaf39262 ай бұрын
Во время выполнения программы вы не сможете ничего вручную добавить или удалить.
@mirkamolrakhimov40903 жыл бұрын
Youtbe Teacher
@SeraphimLUX Жыл бұрын
Автор в этом курсе поставил себе одну задачу - максимально быстро заспидранить на отьебись "курсы" по программированию...
@Gill_only9 ай бұрын
А что он плохо объясняет или что-то недоговаривает?
@abdu39512 ай бұрын
А чего он не рассказал про методы множеств, про intersection, union, update и тд. Ставлю диз
@ПшквЪ Жыл бұрын
По моему происходит не перемешивание значений. а сортировка!
@_alexandr_sk Жыл бұрын
Начиная с python 3.7 множества стали упорядоченными
@Red-sw5lm8 ай бұрын
Кто знает почему всегда snumber 0 если в if изменяется на другое? import random import os attempt = 0 snumber = 0 print("Выберите уровень сложности") print("1. Легкий - Неограниченое число попыток от 0 до 100") print("2. Нормальный - 15 Попыток от 0 до 250") print("3. Сложный - 20 Попыток от 0 до 500") dif = input() if dif == 1: snumber = random.randrange(101) if dif == 2: snumber = random.randrange(251) if dif == 3: snumber = random.randrange(501) os.system("cls") while True: print(snumber) print("================") print("| Угадай число |") print("================") print("Попытки:",attempt) print("================") number = int(input()) os.system("cls") if number == snumber: print("===========================") print("| Поздравляем ты победил! |") print("===========================") break if number < snumber: print("Больше!") attempt = attempt + 1 if number > snumber: print("Меньше!") attempt = attempt + 1 input()
@turkpenbai61173 сағат бұрын
import random import os attempt = 0 snumber = 0 print("Выберите уровень сложности") print("1. Легкий - Неограниченое число попыток от 0 до 100") print("2. Нормальный - 15 Попыток от 0 до 250") print("3. Сложный - 20 Попыток от 0 до 500") dif = input() if dif == "1": snumber = random.randint(0, 100) attempts_allowed = float('inf') # unlimited attempts elif dif == "2": snumber = random.randint(0, 250) attempts_allowed = 15 elif dif == "3": snumber = random.randint(0, 500) attempts_allowed = 20 else: print("Неверный выбор!") exit() os.system("cls") while attempt < attempts_allowed: print("================") print("| Угадай число |") print("================") print("Попытки:", attempt) print("================") number = int(input()) os.system("cls") if number == snumber: print("===========================") print("| Поздравляем, ты победил! |") print("===========================") break elif number < snumber: print("Больше!") else: print("Меньше!") attempt += 1 if attempt >= attempts_allowed: print("Попытки исчерпаны. Загаданное число было:", snumber)