ru_python_beginners | Unsorted

Telegram-канал ru_python_beginners - Python beginners

14446

Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981

Subscribe to a channel

Python beginners

Ну мне надо научится програмировать а не автоматизировать бэкап и забыть

Читать полностью…

Python beginners

Это круто конечно но я пока учусь, а оно прост овсе сбелает за меня

Читать полностью…

Python beginners

Ну диск у меня выступает как резерв просто

Читать полностью…

Python beginners

Ну вот разница во времени обновления папки/файла

Читать полностью…

Python beginners

свежесть понятие абстрактное

Читать полностью…

Python beginners

Окееййй, я понял наверно процентов 40,я планирую тока свежесть файлов сравнивать, названия всегда одинаковые, в обсидиане все по папкампапки в папках.мне нужны тока папки.
С рекурсией папок я еще вопрос не решил, пока что читаю свейгарта про shutil и os.walk

Читать полностью…

Python beginners

кто то вон прикручивал уже https://github.com/Vinzent03/obsidian-git

Читать полностью…

Python beginners

если ты решил синхронизировать два чуда, надо пробовать гит

Читать полностью…

Python beginners

если очень нужно свое, то придется файл хешировать

Читать полностью…

Python beginners

время изменения меняется при сохранении файла

Читать полностью…

Python beginners

Там проблема не в том, как это написано, а как это настроено. Clang-format надо изначально настроить под специфику вашего проекта, потому что инклюды очень капризные

Читать полностью…

Python beginners

а патчить то будем в итоге? 🌚

Читать полностью…

Python beginners

Опять виноват кто угодно, только не я?

Читать полностью…

Python beginners

Можно много говорить о вредных стариках, но может молодые попробуют быть не тупыми? 🌚

Читать полностью…

Python beginners

Не заходил сюда две недели уже не понимаю о чем речь

Читать полностью…

Python beginners

ну, в реальности делают именно так. если хочешь повеселиться, то пожалуйста

Читать полностью…

Python beginners

Корректность отметок времени зависит от пользователя. Сохранил разок на компе с криво настронными часами - и получил что-то произвольное. Другое дело что более надёжного у тебя и нет (если не озаботился заранее).
Ну и более новая - не обязательно более актуальная, особенно если возможы изменения с двух сторон сразу.

Читать полностью…

Python beginners

в этих папках md текстовики и некоторое дополнительное чудо. вот с чудом есть приключения

Читать полностью…

Python beginners

до синхронизации ты поменял файл в обоих источниках, что делать?

Читать полностью…

Python beginners

Простыми мловами проблема в чем

Читать полностью…

Python beginners

для отношений master-slave и постоянного фетча есть rsync

Читать полностью…

Python beginners

правда насколько я помню не всё у обсидиана в plaintext хранится, так что веселое приключение и гугл

Читать полностью…

Python beginners

и как ты планируешь узнать, что одна актуальнее другой? что будешь делать, если они просто разные? мердж конфликт?

Читать полностью…

Python beginners

понятия не имею делает ли обсидиан лишние сохранения

Читать полностью…

Python beginners

Пишу простую программу для сравнения папок с заметками Obsidian на ноутбуке и внешнем диске. Моя задача просто сравнивать их и показывать, какие заметки новее. Сейчас делаю это через время изменения файла, хочу спросить совета:
-Можно ли вообще доверять времени изменения файла, чтобы понять, что заметка свежее? Может оно как-то сбиваться?
-Нужно ли еще проверять размер файла, чтобы быть уверенным в различиях?
-Какие есть еще способы сравнить содержимое двух папок, чтобы понять, где лежит актуальная версия?
-Буду благодарен за любые советы, на что тут обратить внимание.

ниже код, это просто пока что логика программы. я тока учу питон это пробный проект :

import os

def get_folder_data(folder_path):
folder_dict ={}
files_list = os.listdir(folder_path)
for file_name in files_list:
full_file_path = os.path.join(folder_path, file_name)
file_time = os.path.getmtime(full_file_path)
folder_dict[file_name] = file_time
return folder_dict

def get_time_str(diff_seconds):
if diff_seconds < 60:
return f"{round(diff_seconds)} секунд"
elif diff_seconds < 3600:
return f"{round(diff_seconds / 60, 1)} минут"
elif diff_seconds < 86400:
return f"{round(diff_seconds / 3600, 1)} часов"
elif diff_seconds < 604800:
return f"{round(diff_seconds / 86400, 1)} дней"
elif diff_seconds < 2592000:
return f"{round(diff_seconds / 604800, 1)} недель"
else:
return f"{round(diff_seconds / 2592000, 1)} месяцев"

laptop_dict = get_folder_data(r"C:\Users\Administrator\Desktop\МЭК 33000\Laptop_Vault")
disk_dict = get_folder_data(r"C:\Users\Administrator\Desktop\МЭК 33000\Disk_Vault")

print(laptop_dict)
print(disk_dict)

only_laptop = set(laptop_dict) - set(disk_dict)
print("файлы на ноуте",only_laptop)
only_disk = set(disk_dict) - set(laptop_dict)
print("файлы на диске", only_disk)
common_files = set(laptop_dict) & set(disk_dict)
print("Общие файлы:", common_files)


for file_name in common_files:
file_time_laptop = laptop_dict.get(file_name)
file_time_disk = disk_dict.get(file_name)
if file_time_laptop > file_time_disk:
diff = file_time_laptop - file_time_disk
print(f"Файл '{file_name}' на ноутбуке НОВЕЕ на {get_time_str(diff)}")
elif file_time_disk > file_time_laptop:
diff = file_time_disk - file_time_laptop
print(f"Файл '{file_name}' на диске НОВЕЕ на {get_time_str(diff)}")

Читать полностью…

Python beginners

Я и на обычном не легаси коде один раз так лажанул, когда решил эту опцию попробовать. Потом вырубил от греха подальше

Читать полностью…

Python beginners

Никто не тупой, все в чате умные

Читать полностью…

Python beginners

Это уже в полит срач может перерости, потому что причин им быть тупыми больше чем быть не тупыми и это от них не прям сильно зависит.

Читать полностью…

Python beginners

да все о тупых молодых, а вот раньше-то трава была огого

Читать полностью…

Python beginners

Эх забывают классику

Читать полностью…
Subscribe to a channel