Rumah >pembangunan bahagian belakang >Tutorial Python >## Bagaimana untuk Menentukan Laluan Fail Pelaksana dengan Amanah dalam Python?

## Bagaimana untuk Menentukan Laluan Fail Pelaksana dengan Amanah dalam Python?

DDD
DDDasal
2024-10-25 04:40:02459semak imbas

## How to Reliably Determine the Path of the Executing File in Python?

Menentukan Laluan Fail Pelaksana dalam Python

Dalam Python, mendapatkan laluan ke fail yang sedang dijalankan boleh menjadi tugas yang rumit. Pelbagai kaedah yang dicadangkan untuk tujuan ini mempunyai had, seperti yang dijelaskan di bawah:

  • os.path.abspath(os.path.dirname(sys.argv[0])): Pendekatan ini gagal apabila skrip dilaksanakan dari dalam skrip Python lain yang berada dalam direktori lain.
  • os.path.abspath(os.path.dirname(__file__ )): Kaedah ini gagal dalam beberapa senario, termasuk apabila skrip:

       <li>Runs via py2exe (a workaround exists)</li>
       <li> Executes from IDLE using execute() (lacks __file__ attribute)</li>
       <li> Executes in Mac OS X v10.6 with NameError</li>


  • Untuk menangani had ini, penyelesaian alternatif wujud:

    <code class="python">from inspect import getsourcefile
    from os.path import abspath
    path = abspath(getsourcefile(lambda:0))</code>

    Kod ini menggabungkan fungsi daripada modul inspect dan os.path untuk mendapatkan laluan mutlak fail sumber untuk blok kod yang sedang dilaksanakan , tanpa mengira konteks pelaksanaan.

    Atas ialah kandungan terperinci ## Bagaimana untuk Menentukan Laluan Fail Pelaksana dengan Amanah dalam 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