Kadang-kadang, jika jawabannya sangat tidak jelas (Maksudku Anda tidak dapat memutuskan apakah ya atau tidak), maka tidak peduli terlalu banyak, dan Anda dapat mengabaikan masalah sampai jawabannya adalah jelas.
Satu- #!
satunya tujuan adalah untuk meluncurkan skrip. Django memuat sumbernya sendiri dan menggunakannya. Tidak perlu memutuskan juru bahasa apa yang harus digunakan. Dengan cara ini, #!
sebenarnya tidak masuk akal di sini.
Secara umum, jika itu adalah modul dan tidak dapat digunakan sebagai skrip, tidak perlu menggunakan #!
. Di sisi lain, sumber modul sering mengandung if __name__ == '__main__': ...
setidaknya beberapa pengujian fungsionalitas yang sepele. Kemudian #!
masuk akal lagi.
Salah satu alasan bagus untuk menggunakan #!
adalah ketika Anda menggunakan skrip Python 2 dan Python 3 - mereka harus ditafsirkan oleh versi Python yang berbeda. Dengan cara ini, Anda harus mengingat apa yang python
harus digunakan ketika meluncurkan skrip secara manual (tanpa bagian #!
dalam). Jika Anda memiliki campuran skrip-skrip seperti itu, sebaiknya gunakan bagian #!
dalamnya, buat agar dapat dieksekusi, dan luncurkan sebagai skrip yang dapat dieksekusi (chmod ...).
Saat menggunakan MS-Windows, #!
tidak masuk akal - sampai saat ini. Python 3.3 memperkenalkan Windows Python Launcher (py.exe dan pyw.exe) yang bertuliskan #!
baris, mendeteksi versi Python yang diinstal, dan menggunakan versi Python yang benar atau dicari secara eksplisit. Karena ekstensi dapat dikaitkan dengan program, Anda bisa mendapatkan perilaku serupa di Windows seperti halnya menjalankan flag di sistem berbasis Unix.