Python - Советы, библиотеки, гайды
19.7K subscribers
1.17K photos
25 videos
6 files
590 links
Всё для Python программиста :3
Готовый код, советы, лайфхаки, годные библиотеки, уроки и многое другое!

Автор - Абрахам (@priler)

РКН: https://kurl.ru/uXZzR
Download Telegram
По факту 🌚
👍151😁36🤔3😱3🤯1
Используйте глубокую нейронную сеть, чтобы позаимствовать навыки настоящих художников и превратить свои двух битные каракули в шедевры!

Neural-Doodle – это проект, который предоставляет нейронную сеть, которая дорисовывает красивую картинку на основе ваших каракуль :)

Этот проект представляет собой реализацию Semantic Style Transfer (Champandard, 2016) на основе алгоритма Neural Patches (Li, 2016).

Сценарий doodle.py создает новое изображение, используя одно, два, три или четыре изображения в качестве входных данных в зависимости от того, что вы пытаетесь сделать: исходный стиль и его аннотацию, а также целевое изображение содержимого (необязательно) с его аннотацией (он же ваш рисунок). . Алгоритм извлекает аннотированные патчи из изображения стиля и постепенно переносит их в целевое изображение в зависимости от того, насколько близко они совпадают.

Примечание

NeuralDoodle — это навык. Параметры скрипта были скорректированы для корректной работы по умолчанию и с приведенными примерами. Для новых изображений вам может потребоваться настроить значения и изменить входные данные. Это требует практики, но вы можете достичь почти фотореалистичных результатов, если будете повторять :3

Ознакомиться с проектом можно здесь :)
👍27🔥10😱1🤩1
Google не понял, что когда я ищу «как сделать X в python», я говорю о языке программирования
😁74😱4👍21🤯1
Получение информации о диске и оперативной памяти

Со встроенным модулем shutil, вы, возможно уже знакомы, но данный модуль, обычно, используют для обработки файлов, групп файлов и папок.

Но вы, вероятнее всего не знали про методы для получения информации о жёстком диске/оперативной памяти. Метод virtual_memory позволяет получить информацию о производительности системы, а метод disk_usage возвращает количество всей, занятой и свободной памяти.

Так как все три значения возвращаются в байтах, в примере(см. выше) они были переведены в более удобную единицу измерения.

Подробнее про модуль shutil вы можете почитать здесь :3
👍42
Жаль парня 😢
😢91😁303👍2🌚1
🐥 Задача по Python #8

Описание

Для заданной химической формулы, представленной строкой, подсчитайте количество атомов каждого элемента, содержащегося в молекуле, и верните объект(словарь dict).

Примеры

water = 'H2O'
parse_molecule(water) # Вернёт {'H': 2, 'O': 1}

magnesium_hydroxide = 'Mg(OH)2'
parse_molecule(magnesium_hydroxide) # Вернёт {'O': 2, 'H': 2, 'Mg': 1}

fremySalt = 'K4[ON(SO3)2]2'
parse_molecule(fremySalt) # Вернёт {'S': 4, 'O': 14, 'N': 2, 'K': 4}

Как вы могли заметить, в некоторых формулах есть скобки. Индекс вне скобок говорит вам, что вы должны умножить количество каждого атома внутри скобки на этот индекс. Например, в Fe(NO3)2 у вас есть один атом железа, два атома азота и шесть атомов кислорода.

Обратите внимание, что скобки могут быть круглыми, квадратными или фигурными, а также могут быть вложенными. Индекс после фигурных скобок является необязательным.

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
👍21🤯6🔥21
Рекомендовано к просмотру каждому питонисту 🐍☝️
👍68😁32🤔72🔥2😱2🤩2🤯1
Как душ должен работать и как душ работает на самом деле 🌚
👍101😁40😢125🤔2🔥1
pyscreenshot — библиотека, которая позволяет делать захват экрана.

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

Есть некоторые функции pyscreenshot, которые могут быть полезны в особых случаях: гибкие бэкенды, поддержка Wayland, иногда более высокая производительность, необязательная под обработка.

Сверху приведён самый простой пример захвата экрана. Т.к. мы не ничего передаём в метод grab() - у нас захватывается абсолютно весь экран.

Ставится командой pip install pyscreenshot
Документация и примеры кода здесь.
👍23🤔4
Подобные вещи - единственная причина, по которой мой код когда-либо работает 🌚
👍97😁34🤔43
pyAudioAnalysis — библиотека, которая предоставляет широкий спектр функций, связанных со звуком, с упором на извлечение признаков, классификацию, сегментацию и визуализацию.

pyAudioAnalysis предоставляет простые в использовании оболочки для выполнения задач анализа звука.

Что умеет pyAudioAnalysis?

• Классифицировать неизвестные звуки.

• Обнаружение аудиособытий и исключение периодов тишины из длинных записей.

• Выполнение контролируемой сегментации (совместная сегментация - классификация) и несколько других возможностей.

Кроме того, для всех функций предоставляется поддержка командной строки. Например, следующая команда извлекает спектрограмму аудиосигнала, хранящуюся в файле WAV: python audioAnalysis.py fileSpectrogram -i data/doremi.wav

Ставится командой pip install pyAudioAnalysis
Документация и примеры кода здесь :3
👍23🔥3
Метод send у генератора!

yield является таким же выражением, как и, например, some_func(). А значит, оно может возвращать значение.

Генератор может не только отправлять данные наружу с помощью оператора yield, но и получать их извне - для этого через метод send нужно эти данные в генератор передать, а генератор эти данные из yield должен принять.

В примере(см. выше) - мы посылаем в генератор значения, он возвращает накопленную сумму.

Подобное можно сделать и с помощью ООП, но это по сути просто другой способ реализации.
👍19🤯6😢3
Choose a country, salary range, work model and much more in the telegram-channel
🤔31😢51👍1🔥1
Да, вы верно поняли, питонистам платят питонами 🐍
👍62😁14🤔4😢321
🐍 Совет по Python №10.

Вместо того, чтобы изобретать велосипед - воспользуйтесь кодом выше :3
👍64🤔75
pretty_errors — модуль для повышения читаемости ошибок.

pretty_errors делает стандартный вывод исключений и их traceback более удобным для чтения :3

Это работает очень просто, чтобы модуль заработал, достаточно импортировать его в свой код.

Также модуль можно модифицировать, указав параметры в конфиге, что может быть полезно если вы всё равно не понимаете ошибки.

Более того, разные части вывода будут помечаться разным цветом вместо монотонного серого цвета.

Ставится командой pip install pretty-errors
Документация и примеры кода здесь.
👍52🔥8
Комментирование кода be like:
138😁41👍14😢3🔥1
pyperclip — библиотека для работы с буфером обмена.

Здесь мы можем использовать всего два метода paste() и copy().

Метод paste() извлекает информацию(данные) из буфера обмена.

В результате нам в консоль вернутся текущие данные хранящиеся в буфере обмена.

А метод copy() наоборот помещает данные в буфер обмена.

После выполнения данного кода если вы к примеру нажмете ctrl + v у вас из буфера будет извлечена строка 'Текст, который будет скопирован в буфер обмена.'

Вот в принципе все что вам необходимо знать для работы с данным модулем. Теперь вы в любой момент можете получать доступ к содержимому буфера обмена и работать с ним.

Стоит отметить, что данный модуль предназначен для работы с текстовыми данными. То есть если мы скопируем в буфер обмена какой то файл и попытаемся извлечь его с помощью pyperclip, в этом случаем будет возвращена пустая строка.

Кроссплатформенность

В Windows дополнительные модули не нужны.

На Mac этот модуль использует команды pbcopy и pbpaste, которые должны поставляться с пакетом os.

В Linux этот модуль использует команды xclip или xsel, которые должны поставляться с пакетом os. В противном случае запустите «sudo apt-get install xclip» или «sudo apt-get install xsel» (Примечание: xsel не всегда работает.)

В противном случае в Linux вам потребуются установленные модули gtk или PyQt4.

Ставится командой pip install pyperclip
Документация и примеры кода здесь :3
👍38🔥71
Ачё в смысле 🤔
🤯74👍8🤔63🔥3😁3😢1
emoji - модуль, который облегчает работу с эмодзи.

Весь набор кодов Emoji, определенный консорциумом Unicode, поддерживается в дополнение к набору псевдонимов. По умолчанию включен только официальный список, но выполнение emoji.emojize(language='alias') включает как полный список, так и псевдонимы.

По умолчанию используется английский язык (language='en'), но также поддерживаются следующие языки:

Испанский ('es'), Португальский ('pt'), Итальянский ('it'), Французский ('fr'), Немецкий ('de').

utils/get-codes-from-unicode-consortium.py может помочь при обновлении unicode_codes.py, но его работа не гарантируется. Вообще говоря, он очищает таблицу на веб-сайте Консорциума Unicode с помощью BeautifulSoup и выводит содержимое на стандартный вывод в более удобном формате.

Ставится командой pip install emoji
Документация и примеры кода здесь :3
👍314🔥1🎉1