Bagaimana cara menjalankan program Python secara langsung?
Saya telah membuat file .py (katakanlah, mnik.py ) di gedit. Ini berjalan lancar di terminal.
Perintah pergi
python3 mnik.py
Tetapi setiap kali saya mengklik file itu dibuka dengan gedit. Saya tidak dapat menjalankannya secara langsung dengan mengklik.
Apa yang harus dilakukan?
python3
pada baris perintah dengan argumen adalah cara terbaik untuk menjalankan skrip python. Ini sebenarnya cara termudah untuk menjalankan program yang membutuhkan terminal dan argumen (seperti banyak skrip saya sendiri, tetapi juga program sepertimercurial
,sphinx
). Peduli untuk menjelaskan mengapa apa yang telah saya lakukan selama 20 tahun lebih bukan cara yang tepat?./scriptname
tidak memvalidasi klaim Anda bahwa menjalankan skrip dari commandline dengan menggunakanpython3
. Ada berbagai cara menjalankan skrip python dan melakukanpython3 ./mnik.py
juga merupakan cara yang tepat untuk melakukan sesuatu, hanya saja berbeda (dan setidaknya Anda mendapatkan python3 seperti itu dan bukan python2 karena lebih mungkin dengan jawaban terbanyak sejauh ini)Jawaban:
Ada dua hal yang dibutuhkan.
#!
baris yang memberitahukan OS mana yang akan digunakan juru bahasa. Dalam kasus Anda, baris pertama Anda dalam kode harus#!/usr/bin/env python3
Anda perlu membuka manajer file, pergi ke Edit -> Preferences -> Behavior, dan pilih apa yang harus dilakukan dengan file yang dapat dieksekusi
chmod +x /path/to/script.py
dan di GUI, klik kanan pada file dan ubah Properties -> IzinBaris pertama disebut garis shebang dan harus dimulai dengan
#!
; apa pun yang terjadi selanjutnya adalah nama penerjemah yang akan membaca kode Anda. Jika Anda menggunakanpython3
Anda bisa menggunakan salah satu#!/usr/bin/python3
atau#!/usr/bin/env python3
untuk portabilitas. Jika Anda tidak menggunakan kode yang khusus untuk versi python - cukup gunakan#!/usr/bin/env python
Catatan pada output skrip:
Jika skrip Anda mencetak keluaran ke konsol, itu harus memiliki jendela terminal, atau sebagai alternatif menggunakan dialog GUI seperti
zenity
. Lebih suka menggunakanRun in Terminal
opsi jika Anda ingin melihat kode. Jika Anda ingin skrip melakukan sesuatu tanpa melihat keluaran konsol - gunakanRun
opsi.Selain itu, jika Anda memiliki parameter baris perintah, seperti
sys.argv[1]
dalam skrip, Anda tidak dapat mengaturnya kecuali Anda memiliki jendela terminal terbuka.sumber
Files
program pada peluncur. Di windows-spoke yang akan menjadi file explorer atauMy Computer
nautilus
di Terminal#!
(shebang) ke dalam skrip Python, dan bagaimana bentuknya?#!/usr/bin/env python
akan memanggil Python2 di sebagian besar sistem Ubuntu. Meskipun Anda dapat membuat skrip Python yang ditulis untuk Python3 kompatibel dengan Python2, saya tidak akan berasumsi bahwa OP telah melakukannya.#!/usr/bin/env python3
tampaknya peristiwa yang lebih tepatAnda harus meletakkan lokasi program untuk mengeksekusi kode Anda pada baris pertama dan kemudian Anda perlu mengatur skrip untuk dijalankan sebagai yang dapat dieksekusi dengan mengubah izinnya. Ini mengasumsikan Anda meluncurkan aplikasi Anda dari terminal atau skrip lain.
Temukan instalasi Python Anda
Tambahkan lokasi program ke baris teratas program Anda dengan tanda
#!
di depanSetel skrip Python untuk memiliki hak eksekusi
Sekarang Anda dapat menjalankan skrip secara langsung
Daftar kode untuk test.py
sumber
Jika Anda ingin menjalankan program ini tanpa mengetik
python3 mnik.py
Anda harus membuat skrip dapat dieksekusi dan pastikan yangpython3
digunakan untuk menjalankannya.Yang pertama bisa Anda lakukan dengan menjalankan
yang kedua dapat Anda lakukan dengan menambahkan sebagai baris pertama skrip sebuah baris shebang yang memanggil python3 . Pada semua sistem Ubuntu yang telah saya gunakan dengan python3, Anda bisa mendapatkan python3 dengan menambahkan baris ini di bagian atas:
Setelah dua perubahan itu, Anda dapat mengetik
/path/to/mnik.py
,./mnik.py
atau hanyamnik.py
(yang terakhir mengharuskan skrip berada di PATH Anda).Jika Anda membuat perubahan ini Anda mungkin juga ingin mempertimbangkan mengubah nama
mnik.py
untukmnik
, yang praktek umum dengan paket Python dengan perintah yang diterbitkan pada PyPI.sumber
/
hilang di depan sana. Tolong jelaskan apa "Ini" dalam komentar Anda. Apakah itu bash shell? Apakah ini windows Command.com? Dari apa Anda menjalankan program dan dengan sintaks perintah apa?