Ну это состояние одной игры 18 бит. Смасштабировать можно и до гигабайтов. Может у нас волшебно-квантовый компьютер, где CPU бесплатен, а вот память ограничена и миллионы людей(ботов) играют одновременно в крестики-нолики зачем-то. Но на практике вы правы, конечно, это скорее решается как будет храниться база данных с правильным deduplication.
Как мне кажется основная цель обсуждений — не диалог с автором. Это добавление информации к статье. Если вы не согласны с чем то и пишете это — вы пишете это не для автора, а для других людей, прочитавших статью и дальше пошедших читать обсуждения. Может они согласятся с вами и теперь под статьей будут контрпримеры и это дополнит статью. Либо они не согласятся с вами и, возможно, ответят на ваши аргументы своими в поддержку статьи или просто полезными знаниями/дополнительными примерами.
Мы пользуемся Sorted Sets для таблицы рейтинга в ААА игре (миллион одновременных игроков). Придумали много решений что делать если Redis не справится, упадёт и прочее, но пока 5 лет стоит и прекрасно справляется.
Новый класс functools.TopologicalSorter для топологической сортировки направленных ациклических графов
О! Здорово, а то мне самому пришлось писать.
Если вы не представляет зачем это — представьте вам нужно загрузить куда-то зависимые друг от друга вещи.
Ну например что-то A не может существовать без B.
что-то C не может существовать без A.
Что-то D не может существовать без A и без C.
Топологическая сортировка вам поможет добыть последовательность загрузки B, A, C, D.
name = input("Name\n> ")
surname = input("Surname\n> ")
cur.execute(f"INSERT INTO `test` VALUES ('{name}', '{surname}')")
Я, конечно, понимаю, что статья учебная, но давать настолько вредный пример это нехорошо. Нужно рассказать про параметры и sql injections и что вот так, как в этом коде, делать никогда нельзя.
У меня и у жены зенбукам разных модлей по 5 с лишним лет без единой проблемы. Недавно обновил просто из-за того что в новом классная гибридная видеокарта на которой игры лучше идут. Мне кажется вы слишком категоричны из-за единоразового плохого юнита.
А где можно почитать про корректность использования нотации? Сам я как-то только помню определения из вуза и по ним легко выходит, что O(n f(x)) = O( f(x) ), но про «корректность» кажется ничего не было.
Если бы это не запантетовали они — это мог бы запатентовать кто-то другой, в том числе патентные тролли и Тесле бы пришлось не сладко. Так что в условия текущей ситуации вокруг патентования, Тесла — молодцы и защитились и не жадные.
> Строго говоря круга как такого не существует
> Есть многоугольник с бесконечным кол-вом углов.
Довольно сильные утверждения. Это почему?
Круг определяется как часть плоскости ограниченной окружностью (множеством точек равноудалённых от центра). Многоугольник же — ломаной. Не важно сколько у этой ломаной вершин, в любом случае по опеределению будут соседние вершины, между которыми ломаная — прямая. На этой прямой только граничные точки будут удоволетворять определению окружности, остальные точки не будут. Значит ломаная не является окружностью. И как следствие многоугольник не является кругом.
Вы правы, что задачи на собеседовании приводятся как повод показать свои знания в конкретной предметной области. Только ваш пример совсем не про знания конкретной предметной области. Ну только если вы не собеседуетесь на «Специалиста по встроенным типам в python».
Потому что из
Задача сводится к рассмотрению случаев появления ошибок
в конкретной предметной области программирования (на python) ну вообще никак не выходит
Ну в целом бывает очень полезно заглянуть в код чего-то, чем пользуешься.
Иногда интерфейс не даёт достаточного понимания, иногда даже документации может быть недостаточно. Мне периодически приходится обращаться к исходникам MySQL чтобы понять почему оптимизатор выбрал тот или иной путь запроса, или к CPython чтобы понять некоторые алгоритмы для более эффективного написания своего расширения. Я пару раз находил баги в известных фреймворках. Так что далеко не просто ради принципа.
Допустимо произносить и как "тупл", и как "тапл".
Гвидо вон шутил, что зависит от дня недели: https://twitter.com/gvanrossum/status/86144775731941376
Ну это состояние одной игры 18 бит. Смасштабировать можно и до гигабайтов.
Может у нас волшебно-квантовый компьютер, где CPU бесплатен, а вот память ограничена и миллионы людей(ботов) играют одновременно в крестики-нолики зачем-то.
Но на практике вы правы, конечно, это скорее решается как будет храниться база данных с правильным deduplication.
Самая любимая игра, спасибо за статью. Вот скриншот с одним из моих прохождений. Не так много игр, где можно пройти всю игру пацифистом.
Да как-то эти цифры тогда мало чего значат. Бонусы/акции могут быть запросто больше базы и не в один раз. А могут и не быть.
О! Здорово, а то мне самому пришлось писать.
Если вы не представляет зачем это — представьте вам нужно загрузить куда-то зависимые друг от друга вещи.
Ну например что-то A не может существовать без B.
что-то C не может существовать без A.
Что-то D не может существовать без A и без C.
Топологическая сортировка вам поможет добыть последовательность загрузки B, A, C, D.
Я, конечно, понимаю, что статья учебная, но давать настолько вредный пример это нехорошо. Нужно рассказать про параметры и sql injections и что вот так, как в этом коде, делать никогда нельзя.
Если это приносит хоть каплю удовольствия и при этом у этого нет реальной цены — это положительный баланс и естественно стоит.
А где можно почитать про корректность использования нотации? Сам я как-то только помню определения из вуза и по ним легко выходит, что O(n f(x)) = O( f(x) ), но про «корректность» кажется ничего не было.
> Есть многоугольник с бесконечным кол-вом углов.
Довольно сильные утверждения. Это почему?
Круг определяется как часть плоскости ограниченной окружностью (множеством точек равноудалённых от центра). Многоугольник же — ломаной. Не важно сколько у этой ломаной вершин, в любом случае по опеределению будут соседние вершины, между которыми ломаная — прямая. На этой прямой только граничные точки будут удоволетворять определению окружности, остальные точки не будут. Значит ломаная не является окружностью. И как следствие многоугольник не является кругом.
Потому что из в конкретной предметной области программирования (на python) ну вообще никак не выходит .
В восьмёрке вроде как чинят.
dev.mysql.com/doc/refman/8.0/en/atomic-ddl.html
Иногда интерфейс не даёт достаточного понимания, иногда даже документации может быть недостаточно. Мне периодически приходится обращаться к исходникам MySQL чтобы понять почему оптимизатор выбрал тот или иной путь запроса, или к CPython чтобы понять некоторые алгоритмы для более эффективного написания своего расширения. Я пару раз находил баги в известных фреймворках. Так что далеко не просто ради принципа.