Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Melaksanakan Program dengan Ruang dalam Laluan Mereka Menggunakan Python?

Bagaimana untuk Melaksanakan Program dengan Ruang dalam Laluan Mereka Menggunakan Python?

Linda Hamilton
Linda Hamiltonasal
2024-11-03 12:12:29840semak imbas

How to Execute Programs with Spaces in Their Paths Using Python?

Mengendalikan Perlaksanaan Program dengan Ruang dalam Laluan Menggunakan Python

Dalam Python, os.system biasanya digunakan untuk melaksanakan program luaran. Walau bagaimanapun, ia boleh gagal apabila ruang hadir dalam laluan ke program.

Pertimbangkan coretan kod berikut:

<code class="python">import os

os.system("C:\Temp\a b c\Notepad.exe");</code>

Kod ini cuba melaksanakan Notepad dengan laluan yang mengandungi ruang. Walau bagaimanapun, ia gagal dengan ralat:

'C:\Temp\a' is not recognized as an internal or external command, operable program or batch file.

Untuk menyelesaikan isu ini, elakkan atur cara dengan petikan:

<code class="python">os.system('"C:\Temp\a b c\Notepad.exe"');</code>

Walau bagaimanapun, pendekatan ini gagal apabila menghantar parameter kepada atur cara, seperti dilihat dalam contoh berikut:

<code class="python">os.system('"C:\Temp\a b c\Notepad.exe" "C:\test.txt"');</code>

Untuk menangani perkara ini, gunakan subprocess.call:

<code class="python">import subprocess

subprocess.call(['C:\Temp\a b c\Notepad.exe', 'C:\test.txt'])</code>

subprocess.call menerima senarai hujah, menghapuskan keperluan untuk petikan yang rumit. Ini secara berkesan menyelesaikan isu melaksanakan program dengan ruang dalam laluannya.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Program dengan Ruang dalam Laluan Mereka Menggunakan 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