У меня есть немного проблемы с ~ в моих путях.
Этот пример кода создает некоторые каталоги, названные "~/some_dir", и не понимайте, что я хотел создать some_dir в своем корневом каталоге.
my_dir = "~/some_dir"
if not os.path.exists(my_dir):
os.makedirs(my_dir)
Обратите внимание, что это находится в основанной на Linux системе.
Вам нужно расширить тильду вручную:
my_dir = os.path.expanduser('~/some_dir')
Это, вероятно, потому что Python не Bash и не следит за тем же конвенциями. Вы можете использовать это:
homedir = os.path.expanduser('~')
Преобразование ~/some_dir
в $HOME/some_dir
называется tilde expansion и является общей функцией пользовательского интерфейса. Файловая система ничего об этом не знает.
В Python эта возможность реализована с помощью os.path.expanduser:
my_dir = os.path.expanduser("~/some_dir")