Код на салфетке
2.24K subscribers
751 photos
15 videos
2 files
793 links
Канал для тех, кому интересно программирование на Python и не только.

Сайт: https://pressanybutton.ru/
Чат: https://t.iss.one/+Li2vbxfWo0Q4ZDk6
Заметки автора: @writeanynotes

Реклама и взаимопиар: @Murzyev1995
Сотрудничество и др.: @proDreams
Download Telegram
Что выведет данный код? №30
🔥2
Что выведет код с изображения? №30
Anonymous Quiz
51%
{4}
5%
{3}
8%
{1, 4}
23%
set()
0%
{2, 4}
13%
{1, 3, 4}
🔥4
Редизайн и новый раздел на сайте
Автор: Иван Ашихмин

Приветствуем.

У нас два объявления!

Первое: Хотим представить вам редизайн сайта "Код на салфетке", правда, пока только на одной странице. В будущем и другие будут переделаны, а сейчас нам нужны ваши отзывы по новому внешнему виду!

Второе: Новая страница сайта, представляющая вам проекты над которыми мы работали и работаем. Что-то вроде нашего портфолио, которое будет только пополняться! Быть может кому-то из вас нужны разработчики для реализации? Мы всегда готовы обсудить условия.

Ссылка на новую страницу



Пост на сайте
Поддержать проект на Boosty
Поддержать проект в Telegram

#Код_на_салфетке #проекты #дизайн #наши_проекты #обновление
🔥6😱1
На платформе Fragment появился раздел Stars.

Пока только для покупки звёзд за криптовалюту TON.

Ожидаем, когда введут систему продажи полученных звёзд.
🔥4
Видео-разбор вчерашней задачи.

Посмотреть на YouTube.

Будем благодарны, если вы поставите видео лайк и досмотрите его до конца. Спасибо!

Текстовый разбор будет через час 😉
🔥4
Вчерашняя задача про множества оказалась довольно лёгкой для большинства из вас. Её решило 56%, но мы всё равно её разберём.

Код задачи:
a = {1, 2, 3}
b = {4, 2, 1}

print(a.union(b) - a.intersection(b) - a)



Разбор задачи
Создаём две переменные a и b, в которых находятся два множества чисел.

Затем вызываем функцию print, в которой выполняются операции с множествами.

Первый аргумент объединяет (union) множество a с множеством b. В результате получаем новое множество, содержащее уникальные элементы из обоих множеств: {1, 2, 3, 4}.

Второй аргумент находит пересечение (intersection) двух множеств, то есть оставляет только те элементы, которые есть в обоих множествах: {1, 2}.

Третий аргумент — это изначальное множество a: {1, 2, 3}.

В итоге получаем такое выражение:
print({1, 2, 3, 4} - {1, 2} - {1, 2, 3})


Вычитание в случае с множествами выполняет операцию нахождения разницы (difference) между множествами, то есть из левого операнда убираются все элементы, которые есть в правом операнде:
- Сперва мы ищем разницу между {1, 2, 3, 4} и {1, 2}. Это {3, 4}.
- Затем ищем разницу между {3, 4} и {1, 2, 3}. Это {4}.

Правильный ответ: {4}.
🔥7
Найдите ошибку в коде ниже и исчерпывающим образом объясните ее в комментариях.

И давайте без интерпретаторов, а то не интересно!

#python #код_на_салфетке #найди_ошибку
🔥4
Оглавление со ссылками на задачи "Что выведет этот код?".

1. ЗадачаРазбор
2. ЗадачаРазборВидео
3. ЗадачаРазборВидео
4. ЗадачаРазбор
5. ЗадачаРазбор
6. ЗадачаРазборВидео
7. ЗадачаРазбор
8. ЗадачаРазбор
9. ЗадачаРазбор
10. ЗадачаРазбор
11. ЗадачаРазбор
12. ЗадачаРазборВидео
13. ЗадачаРазбор
14. ЗадачаРазбор
15. ЗадачаРазбор
16. ЗадачаРазбор
17. ЗадачаРазбор
18. ЗадачаРазбор
19. ЗадачаРазбор
20. ЗадачаРазбор
21. ЗадачаРазбор
22. ЗадачаРазбор
23. ЗадачаРазбор
24. ЗадачаРазбор
25. ЗадачаРазбор
26. ЗадачаРазборВидео
27. ЗадачаРазборВидео
28. ЗадачаРазборВидео
29. ЗадачаРазборВидео
30. ЗадачаРазборВидео
31. ЗадачаРазборВидео
32. ЗадачаРазборВидео
33. ЗадачаРазбор
34. ЗадачаРазборВидео
35. ЗадачаРазборВидео
36. ЗадачаРазбор
37. ЗадачаРазбор
38. ЗадачаРазбор
🔥5
Оглавление со ссылками на задачи "Найди ошибку в коде".

1. ЗадачаРазбор
2. ЗадачаРазбор
3. ЗадачаРазборВидео
4. ЗадачаРазборВидео
5. ЗадачаРазбор
🔥5
Оглавление для серии постов рубрики "Сравнение Python и C".

Для удобства навигации по предстоящим материалам, в данном посте будут публиковаться ссылки на сообщения.

1. Сравнение типизации Python и C
2. Сравнение интерпретатора Python и компилятора C
3. Сравнение array C и list Python
4. Где применяются Python и C/C++ (часть 1)
5. Сравнение hash map С/C++ с dict Python (часть 1)
6. Сравнение hash map С и C++ с dict Python (часть 2)
🔥5👍2
Приветствую!

В длинных постах можно запутаться поэтому, собираю воедино всё, что есть на данный момент.


Оглавления:
Для удобства навигации есть посты с оглавлениями по темам:

"Сайт на Django"
"Telegram-бот на AIOgram3"
"Применение Docker"
"Полезные инструменты"
"Путь в IT."
"Код в мешке"
"Boosty эксклюзив"
"Сравнение Python и C"

Задачи "Что выведет этот код?"
Задачи "Найди ошибку в коде"


Ресурсы канала:

Уютный и немного безумный чат канала.
Бот с материалами к постам
Сайт со всеми постами
Канал в Dzen
Сообщество в VK


Поддержка.

Если вам нравится канал и выходящий материал, поделитесь ссылкой с людьми, кому это тоже может быть интересно.

Также поддержать канал можно:
Подпиской или донатом на Boosty.

Донатом в нашем Telegram-боте.
Отправив донат в DonationAlerts.

Или внеся сайт в исключения вашего блокировщика рекламы.
🔥6👍1
Вчера мы опубликовали пятую задачу на поиск ошибки в коде. Верное решение в комментариях написал Oleg Malakhov.

Код задачи:
user_input = "login password"
user_input = user_input.split()
password, login = user_input.pop(), user_input

credentials = {login: password}

print(credentials)


Разбор задачи.
Создаём переменную user_input, в которую помещаем строку "login password".

Затем в переменную user_input при помощи строкового метода .split() помещаем список из двух строк ["login", "password"].

Далее в две переменные password и login помещаем следующее:
- В переменную password помещаем результат работы метода .pop(), удаляющего и возвращающего последний элемент списка.
- В переменную login помещаем то, что находится в переменной user_input, а именно список с единственным элементом - ["login"]

После этого создаём переменную credentials и инициализируем в ней словарь, используя переменные login и password в качестве ключа и значения, соотвественно.

В конце вызываем функцию print(), которой распечатываем словарь из переменной credentials.

Почему ошибка?
Ошибка заключается в передаче списка в качестве ключа для словаря. Ключом словаря может быть только хешируемые типы данных. Подробнее об этом рассказано в разборе 7-й задачи.

Как можно исправить?
Исправить можно двумя способами:

Первый способ — это распаковать список с одним элементом в переменную:
password, login = user_input.pop(), *user_input


Не самый лучший, поскольку в списке может быть больше одного элемента, в таком случае питон не найдёт переменную для распаковки и выдаст другую ошибку.

Второй способ — это явно указать на то, что нам нужен первый(нулевой) элемент:
password, login = user_input.pop(), user_input[0]


В таком случае гарантированно вернётся первый элемент из списка, а будет он тем, который нужен или нет, — это уже другой вопрос.
🔥4
Django 43. Подключаем Celery и Redis для фоновой отправки почты
Автор: Иван Ашихмин

В этом посте мы добавим поддержку Celery и Redis в наш Django-проект, чтобы отправлять электронную почту в фоновом режиме.


Читать пост в Telegram

Файлы к посту, можно получить в боте по коду: 336244

Пост на сайте
Поддержать проект на Boosty
Поддержать проект в Telegram

#Docker #PostgreSQL #Django #Windows #Linux #Код_на_салфетке #Celery #Гайд #Docker_compose #Redis #Celery_Worker #yaml
🔥6
📚Спешим порекомендовать любопытный канал, который ведет опытный разработчик, активный спикер и организатор конференций по Python, ментор и просто интересный автор Евгений Афонасьев.

🤓 Среди постов – отчеты и видео с конференций, воспоминания об опыте разработки в разных компаниях, рекомендации интересных библиотек и многое другое. Встречаются промокоды и розыгрыши билетов на конференции.

Рекомендуем!
🔥3
Приветствуем!

Продолжаем рубрику "Вопросы и ответы"!

В течение недели вы в комментариях к этому посту можете задавать различные вопросы нашей команде. Вопросы могут быть о чём угодно (в рамках разумного): о постах, о Python, о разработке в целом.

Ровно через неделю мы подготовим пост с ответами на появившиеся вопросы.

Также у нас есть чат, в котором тоже можно задавать вопросы и просто общаться)
🔥5
Записали разбор задачи со вторника "Найди ошибку в Python коде №5"!

Ссылка на задачу.

Ссылка на видео.

Будем благодарны, если вы поставите видео лайк и досмотрите его до конца. Спасибо!
🔥3
Приветствую!

Сегодня пятница, а это значит, что настало время для нашего традиционного кинопросмотра. На этой неделе я рад представить вам фильм "Двухсотлетний человек". Эта трогательная история о роботе, который стремится стать человеком, непременно заставит вас задуматься о природе человеческой души и о том, что делает нас по-настоящему живыми. Устраивайтесь поудобнее, готовьте свои любимые закуски и наслаждайтесь этим удивительным кино.

Фильм: Двухсотлетний человек

Год: 1999

Начало нового тысячелетия; происходит прорыв в глобальных технологиях. Люди уже не заводят дома собак и кошек: они покупают себе роботов. Вот и семья Мартинов приобретает себе необычный подарок: робота нового поколения NDR-114, а в обычной жизни просто Эндрю. Купленный как прибор, запрограммированный для выполнения домашней работы, Эндрю вдруг начинает испытывать странные ощущения. Он еще не знает, что это называется чувствами.

https://www.sspoisk.ru/film/7640/

Приятного просмотра!
🔥3