Online Python derleyici nasıl kullanılır?
- Kodunuzu düzenleyiciye yazın veya yapıştırın. Sayfa kısa bir örnekle açılır; Örneği sıfırla onu istediğiniz zaman geri getirir.
- Programınız
input()çağırıyorsa yanıtları çıktının altındaki Girdi (stdin) kutusuna, herinput()çağrısı için bir satır olacak şekilde yazın. - Çalıştır düğmesine ya da Ctrl + Enter (Mac'te ⌘ + Enter) tuşlarına basın.
- Sonucu Çıktı panelinde okuyun. Hata izleri (traceback) dahil
stderr'e yazdırılan her şey hata olarak vurgulanır. - 5, 15 veya 60 saniyelik bir süre sınırı seçin. Bir betik daha uzun çalışırsa (örneğin yanlışlıkla yazılmış bir
while True:) otomatik olarak durdurulur. İstediğiniz an Durdur düğmesine de basabilirsiniz.
İlk çalıştırmada yaklaşık 10 MB boyutundaki Python çalışma ortamı indirilir. Tarayıcınız onu önbelleğe alır, böylece sonraki çalıştırmalar çok daha hızlı başlar. Betiğinizi kaydetmek için Kopyala veya main.py düğmesini kullanın.
Kodunuz cihazınızdan hiç çıkmaz. Python, bir Web Worker içinde tarayıcınızda çalışır; sunucularımıza hiçbir şey yüklenmez ve orada hiçbir şey saklanmaz. Düzenleyici son kodunuzu tarayıcınızın yerel depolama alanında hatırlar; başka hiçbir yerde saklanmaz.
Neler destekleniyor?
Derleyici, WebAssembly'ye derlenmiş CPython yorumlayıcısı olan Pyodide 0.26 aracılığıyla Python 3.12 kullanır. Bu, Python'a benzeyen bir taklit değil, gerçek CPython'dur; dil tam olarak bilgisayarınızdaki gibi davranır.
- Standart kütüphane:
math,collections,itertools,datetime,json,re,dataclasses,statisticsve daha fazlası. - Otomatik paket yükleme: kodunuz NumPy veya pandas gibi Pyodide'in sağladığı bir paketi içe aktardığında paket anında indirilir. Pek çok saf Python paketi ve bilimsel paket kullanılabilir.
- Standart girdi: stdin kutusundaki veriler
input()vesys.stdinüzerinden okunur. async/await: kodrunPythonAsyncile çalışır, bu yüzden en üst düzeydeawaitkullanılabilir.
Akılda tutulması gereken sınırlamalar:
- Ağ soketi yok.
socket,urllib.requestverequestsgibi modüller buradan bağlantı açamaz. - Kalıcı dosya yok.
open()ile dosya oluşturup okuyabilirsiniz, ancak bu dosyalar bellekte tutulur ve sayfayı yenilediğinizde veya Durdur'a bastığınızda kaybolur. - Grafikler gösterilmez. matplotlib içe aktarılabilir, ancak hiçbir şekil görüntülenmez; bunun yerine sayıları veya tabloları yazdırın.
- Pyodide'in sunmadığı, yerel (native) kod içeren paketler kurulamaz.
Python hızlı başvuru
from dataclasses import dataclass
@dataclass
class Item:
name: str
price: float
cart = [Item("pen", 1.5), Item("book", 12.0)]
total = sum(i.price for i in cart)
print(f"{len(cart)} items, total {total:.2f}")
if total > 10 and cart:
print("Free shipping!")
| Görev | Sözdizimi |
|---|---|
| Biçimlendirilmiş metin yazdırma | print(f"{x:.2f}") |
| Bir satır girdi okuma | name = input("Name? ") |
| Girdiyi sayıya dönüştürme | n = int(input()) |
| Liste üreteci (list comprehension) | [x * 2 for x in data if x > 0] |
| Sözlük üzerinde döngü | for k, v in d.items(): |
| Bir hatayı yakalama | try: ... except ValueError as e: ... |
İpuçları
- Programınız stdin kutusundaki satır sayısından daha fazla girdi isterse Python
EOFErrorhatası verir. Herinput()çağrısı için bir satır ekleyin. - pandas gibi büyük paketlerin içe aktarılması ilk seferde birkaç saniye sürer. İndirme süresi de süre sınırına dahildir; ağır betikler için 60 sn'yi seçin.
- Her çalıştırma yeni değişkenlerle başlar, ancak daha önce içe aktardığınız modüller yüklü kalır; bu yüzden tekrar eden çalıştırmalar hızlıdır.
- JSON çıktısıyla mı çalışıyorsunuz? Okunaklı biçimlendirmek ve doğrulamak için çıktıyı JSON biçimlendiriciye yapıştırın.
Sıkça sorulan sorular
Bu gerçek bir Python yorumlayıcısı mı?
Evet. Pyodide, WebAssembly'ye derlenmiş CPython 3.12'dir. Sözdizimi, yerleşik işlevler ve standart kütüphane masaüstü Python ile aynıdır. Başlıca farklar tarayıcıda çalışmaktan kaynaklanır: ağ erişimi ve kalıcı bir dosya sistemi yoktur.
NumPy ve pandas kullanabilir miyim?
Evet. Onları her zamanki gibi içe aktarın; kodu ilk çalıştırdığınızda indirilirler. Pyodide'in sağladığı diğer pek çok bilimsel ve saf Python paketi de aynı şekilde yüklenir.
Programıma nasıl girdi veririm?
Değerleri, programınızın sorduğu sırayla ve her input() çağrısı için bir satır olacak şekilde stdin kutusuna yazın. Ardından Çalıştır'a basın.
Betiğim neden 15 saniye sonra duruyor?
Varsayılan süre sınırı, sekmeyi dondurabilecek sonsuz döngülere karşı sizi korur. Daha uzun hesaplamalar için süre sınırı menüsünden 60 sn'yi seçin.
Başka diller de çalıştırabilir miyim?
Evet. Online JavaScript derleyiciyi deneyin veya tüm ücretsiz geliştirici araçlarına göz atın.
Güncellendi