Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapakah os.makedirs Gagal dengan Pengembangan Tilde dalam Laluan?
os.makedirs Menghadapi Kekeliruan dengan Pengembangan Tilde dalam Laluan
Watak tilde (~) mempunyai kepentingan istimewa dalam persekitaran shell, yang mewakili pengguna direktori rumah. Walau bagaimanapun, apabila bekerja dengan fungsi os.makedirs Python, notasi ini boleh memberikan cabaran.
Pertimbangkan coretan kod berikut:
my_dir = "~/some_dir" if not os.path.exists(my_dir): os.makedirs(my_dir)
Dalam kes ini, os.makedirs dijangka akan mencipta direktori yang dipanggil ~/some_dir. Walau bagaimanapun, kod mungkin gagal dengan ralat, kerana Python tidak mengembangkan tilde secara automatik.
Untuk menyelesaikan isu ini, perlu melakukan pengembangan tilde secara manual menggunakan fungsi os.path.expanduser:
my_dir = os.path.expanduser("~/some_dir")
Dengan mempraproses laluan dengan os.path.expanduser, Python akan mentafsir dengan betul ~/some_dir sebagai lokasi yang dimaksudkan dalam direktori rumah pengguna. Pengubahsuaian ini memastikan bahawa os.makedirs boleh berjaya mencipta struktur direktori yang diingini.
Atas ialah kandungan terperinci Mengapakah os.makedirs Gagal dengan Pengembangan Tilde dalam Laluan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!