Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melaksanakan Program Luaran dengan Ruang dalam Laluan daripada Python?

Bagaimanakah Saya Boleh Melaksanakan Program Luaran dengan Ruang dalam Laluan daripada Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-03 07:07:30590semak imbas

How Can I Execute External Programs with Spaces in the Path from Python?

Melaksanakan Program Luaran daripada Python: Mengendalikan Laluan dengan Ruang

Isu yang diterangkan dalam pertanyaan asal berkaitan dengan melaksanakan program luaran daripada Python skrip. Skrip yang disediakan cuba melancarkan Notepad.exe dengan laluan yang mengandungi ruang, tetapi menghadapi ralat kerana cara shell mentafsir arahan.

Untuk menyelesaikan isu ini, anda perlu melarikan diri dengan betul daripada laluan untuk dikendalikan. ruang. Menggunakan petikan berganda di sekitar laluan, seperti dalam contoh skrip kedua, mengenal pasti laluan penuh dengan betul. Walau bagaimanapun, menambah hujah pada arahan menyebabkan ia gagal sekali lagi.

Penyelesaian ideal melibatkan penggunaan fungsi subprocess.call Python. Fungsi ini menerima senarai sebagai input, membolehkan hujah mudah dibatasi. Dengan menyediakan laluan penuh dan hujah sebagai senarai, seperti yang ditunjukkan dalam kod yang disediakan, isu ruang dalam laluan dikendalikan dengan anggun.

Menggunakan subprocess.call juga menghapuskan keperluan untuk konvensyen petikan khusus yang berbeza merentas cengkerang. Ia memastikan program luaran dilaksanakan dengan betul, tanpa mengira kehadiran ruang dalam laluan atau argumen.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Program Luaran dengan Ruang dalam Laluan daripada Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn