Также лучше приводить такой код, который можно скопипастить и запустить у себя. Добавьте необходимые импорты, функции или значения, в общем, если хотите, чтобы ваш код с большей вероятностью посмотрели и разобрали, сделайте, чтобы эксперту было удобно с ним работать.
Замените скриншот кода на код в тексте, обернутый тегом code.
Также не совсем понятно, какие проблемы с теми вариантами, которые перечислены?
Другое дело, что лучше не использовать имена, которые могут пересекаться с другими похожими, например parser - мало ли парсеров, назови его my_parser или еще как-то по-другому от греха...
Не знаю, как там это реализовано, но тебе надо получить список уникальных объектов, которые можно сопоставить с твоими _id, и подать этот список как аргумент random.choices().
Что-нибудь примерно такое:
random_id = random.choices([str(id) for id in my_collection.find().distinct('_id')])
Оберните код в вопросе тегом code, длинную простыню спрячьте под спойлер. Рекомендую оставить только тег pygame, так как он является подмножеством Python, и есть правило 3.1
Вы понимаете, что расширение файла должно отражать содержание файла? Вам надо перекодировать файл формата jpg в формат png. А просто переименовать - ничего хорошего не даст.
Yupiter7575, у вас не правильное понимание системы тегов на Тостере. Тут теги не для того, чтобы на них смотреть и понимать, что это не php. Тут теги именно как темы, на которые подписываешься.
Ваши рекомендации пихать всюду тег Python противоречат логике ресурса. Не надо так.
В данном конкретном случае тег Python допустим, т.к. в вопросе есть код Python, и проблема таки в синтаксисе и пунктуации языка. Но не нужен, т.к. 30 тысячам подписчиков тега Python совершенно не интересен и бесполезен данный вопрос.
На мой взгляд, достаточно упомянуть Python в вопросе, максимум в названии вопроса.
Оберните код в вопросе тегом code.
Кроме того, лучше привести полный текст ошибки в тексте вопроса (можно спрятать под спойлер, если длинный текст ошибки).
Kadabrov, что любопытно, у меня эта же статья на Хабре в избранном стоит, отложил когда-то себе, чтоб при случае не искать долго :) но пока не добрался до практики, Python осваиваю.
- добавить/вычесть смещение и преобразовать. :)