Python Dosyasını Terminalde Çalıştırma


47

Senaryolarımı Ubuntu'nun terminalinden düzenli olarak çalıştırmayı öğrenmeye çalışıyorum. Yani varlık Ben aşina değilim dedi bash, wgetve awkçağrılan ancak nasıl piton dosyaları terminali çalıştırmak denir? Bunu öğrenmek istiyorum ama nerede araştırılacağı konusunda emin değilim. Bir var .pywbir dosya olduğunu referanslar çeşitli .pybir klasördeki dosyalar.


Aşağıdakiler de dahil olmak üzere, genel başlık dahil olmak üzere genel durum - bir işlevi çağırmak için terminalde python komut dosyası çalıştırma hakkında stackoverflow.com/q/25837063/54964
Léo Léopold Hertz 준영

Yanıtlar:


81

Seçenek 1: Tercümanı arayın

  • Python 2 için: python <filename>.py
  • Python 3 için: python3 <filename>.py

Seçenek 2: Komut dizisinin tercümanı çağırmasına izin verin

  1. Dosyanızın ilk satırının olduğundan emin olun #!/usr/bin/env python.
  2. Yürütülebilir yap - chmod +x <filename>.py.
  3. Ve koş olarak ./<filename>.py

sebebi nedir, .py'yi çalıştırmak istediğimde sadece yöntem seçeneğiniz 1 ile çalışıyor ve ikincisi bir sözdizimi hatası veriyor?
Krsztr

Ya yeni bir python dosyası açmak istersen?
asmgx

8

Sadece betiğin dosya adını önek ile belirtin python. Örneğin:

python filename.py

5

Sonrasında bir -ibayrak ekleyerek pythondaha fazla kodlama için oturumunuzu çalışır durumda tutabileceğinizi de belirtmekte fayda var . Bunun gibi, böyle:

python -i <file_name.py>

3
python <filename.py>

Pyw aynı şekilde çalışması gerektiğini düşünüyorum. Ayrıca etkileşimli bir konsolu sadece

python

Ayrıca, betiğin en üstüne bir shebang ekleyerek açıkça python çağırmaktan da kaçınabilirsiniz:

#!/usr/bin/env python

... veya herhangi bir sayıdaki varyasyonları


2

İlk çalıştırma aşağıdaki komutu

chmod +x <filename>.py

Sonra betiğin en üstüne #!, Python yorumlayıcısının yolunu ekleyin :

#!/usr/bin/python

Komut dosyasının Python yorumlayıcısının yaşadığı yerden bağımsız olmasını istiyorsanız, envprogramı kullanabilirsiniz . Hemen hemen tüm Unix varyantları, Python yorumlayıcısının kullanıcının dizininde olduğunu varsayarak aşağıdakileri desteklemektedir $PATH:

#! /usr/bin/env python

0

Dizini kullanarak cd.py'yi içeren dizine geçin ve aşağıdaki iki komuttan birini çalıştırın:

python <filename>.py  # for Python 2.x  
python3 <filename>.py # for Python 3.x 

Alternatif olarak, aşağıdaki iki komuttan birini çalıştırın:

python /path/to/<filename>.py  # for Python 2.x  
python3 /path/to/<filename>.py # for Python 3.x 

-2

python3Bunun yerine komutu kullanmayı deneyin python. Komut dosyası Python3'te yazılmışsa ve Python2 ile çalıştırmayı denerseniz sorunla karşılaşabilirsiniz. Ubuntu her ikisine de sahiptir; program adını değiştirmek python3(yerine python) yerine bunu mümkün kıldı. Ubuntu'nun v2.7'ye ihtiyacı var (2/16/2017 itibariyle) bu yüzden Python2'yi silmeyin veya kaldırmayın, ancak ikisini de saklayın. Komut dosyalarını çalıştırmak için Python3'ü kullanma alışkanlığı edinin.


1
-1 Python 3, Python 2 scriptlerini çalıştıramaz (birkaç istisna dışında).
wjandrea

Benim hatam, senin hakkın. Muhtemelen Ubuntu hala python 2 kullanmaktadır. Üzgünüz, beni düzelttiğiniz için teşekkürler.
Tony,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.