Pythonist.ru - образование по питону
25K subscribers
296 photos
5 videos
5 files
1.15K links
Pythonist.ru - помощь в подготовке к собеседованию на позицию Python Developer.
Реклама: @anothertechrock

РКН: https://rknn.link/car
Download Telegram
💥 Работа с файлами в Python

🚩 Чтение и запись файлов в Python. Простой туториал, где на примерах разбирается, как открыть, прочитать и записать файл.

🚩 Чтение бинарных файлов с помощью Python. Файл, который содержит бинарные данные, называется двоичным (бинарным) файлом. В этой статье рассмотрены три разных способа чтения бинарных файлов.

🚩 Чтение и запись в файл JSON-объекта. Эта статья познакомит вас с форматом JSON и методами, с помощью которых можно считать и записать этот формат в файл.

🚩 Создание и изменение PDF-файлов в Python. В экосистеме Python есть несколько отличных пакетов для чтения, изменения и создания PDF-файлов. Из этого руководства вы узнаете, как считывать текст из PDF-файла, как создавать, делить и объединять такие файлы, как их вращать и обрезать.

🚩 Как использовать модуль Pathlib. Все операционные системы имеют разные правила построения путей к файлам. Например, в Linux для путей используется косая черта (слэш, /), а в Windows — обратная косая черта (обратный слэш, \). Эта небольшая разница может вызвать ряд проблем. Модуль Pathlib обеспечит одинаковую работу ваших путей к файлам в разных операционных системах.
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💬 Задача на логику. Судебная головоломка

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

Почему с точки зрения отдельного обвиняемого лучше признаться, а с точки зрения обоих - не делать этого?

Излагайте свои рассуждения в комментариях!

#логическаязадача
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
💬 Ответ к задаче "Судебная головоломка"

Когда обвиняемый думает о себе, он может рассуждать следующим образом: "Допустим, второй обвиняемый признается. Если я тоже признаюсь, то получу легкое наказание, а если нет - буду сурово наказан. Допустим также, что второй обвиняемый не признается, тогда меня освободят независимо от моих действий. Поэтому лучше признаться".

Решив таким образом, оба обвиняемых признают свою вину. В результате они оба получат наказание, хотя и легкое. А могли бы быть освобождены, если бы оба не признали своей вины.

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


#логическаязадача
Please open Telegram to view this post
VIEW IN TELEGRAM
7
💥 Вакансии по Python за последние две недели:

🟪 ML Middle разработчик (PyTorch/TF). Evapps, удалённо (РФ), 180-200 т.р.

🟥 AI Agent Python Developer. Aspirity Solution, удалённо (вне РФ/РБ), от $20/час

🟪 Python Senior Разработчик (FastAPI). AGIMA, удалённо (РФ), до 1600 р. /час

🟥 Python Senior Django Developer. VallettaSoftware, удалённо, $3500-4300

🟪 Python Backend Developer (FastAPI). Астратех, гибрид / удалённо (Москва / РФ), 350-450 т.р.

🟥 FullStack Python Senior Developer. ghostbusters, удалённо, $5000-8000

🟪 Python Middle/Senior Разработчик (FastAPI, AsyncIO). TrafficStars, офис (Лимассол, Кипр), 4500–5500 евро
Please open Telegram to view this post
VIEW IN TELEGRAM
Задача с кодом. Сиракузская последовательность

Сиракузская последовательность генерируется следующим образом. Берем любое натуральное число n. Если оно четное, то делим его на 2, а если нечетное, то умножаем на 3 и прибавляем 1 (получаем 3n + 1). Над полученным числом выполняем те же самые действия, и так далее.

Немецкий математик Коллатц выдвинул гипотезу: какое бы начальное число n мы ни взяли, рано или поздно мы получим единицу.

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

Примеры:

collatz(2) ➞ (2, 2)
# seq = [2, 1]

collatz(3) ➞ (8, 16)
# seq = [3, 10, 5, 16, 8, 4, 2, 1]

collatz(7) ➞ (17, 52)
# seq = [7, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]

collatz(8) ➞ (4, 8)
# seq = [8, 4, 2, 1]

Решение на нашем сайте.

#задача #coding
А чё, в смысле? 🤔
😁161