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

Linda Hamilton
Lepaskan: 2024-11-03 12:12:29
asal
840 orang telah melayarinya

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>
Salin selepas log masuk

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.
Salin selepas log masuk

Untuk menyelesaikan isu ini, elakkan atur cara dengan petikan:

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

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>
Salin selepas log masuk

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan