Discuvr Python Biçimlendirici

Ofis ve Veri

CSV'den Excel'e CSV yapıştırın ve hemen tablo olarak görün; sayılar, tarihler ve kimlikler Excel'in saklaması gerektiği türde. Temiz bir .xlsx'i yalnızca istediğinizde indirin. PDF imzala Tarayıcınızda bir PDF imzalayın - imzanızı çizin, yazın veya yükleyin, herhangi bir sayfaya yerleştirin, tarihi ekleyin ve imzalı kopyayı indirin. Dosya cihazınızdan hiç çıkmaz. Karart PDF, Word, Excel, PowerPoint, metin ve görsel dosyalarını kalıcı olarak karartın. Eşleşmeler ve kutular dosyanın kendisinden silinir, üstü kapatılmaz; sonuç indirmeden önce yeniden kontrol edilir. IP adresim ne Bağlandığınızda web sitelerinin gördüğü genel IP adresini, paylaşımlı (CGNAT) mı özel mi olduğunu ve tarayıcınızın başka neleri açığa çıkardığını görün. Büyük/Küçük Harf Dönüştürücü ve Satır Araçları Metni BÜYÜK, küçük, Başlık veya Cümle düzenine çevirin, adları camelCase ya da snake_case yapın, yinelenen satırları kaldırın veya bir listeyi sıralayın. Metin Karşılaştırma Eklenen, silinen ve değiştirilen her satırı, değişen sözcükler vurgulanmış olarak görmek için bir metnin iki sürümünü yapıştırın.

Yazı ve Teklifler

Üslup İyileştirme Yazdıklarınızı doğru dil bilgisi, yapı ve ifadeyle kendi üslubunuzla yeniden biçimlendirin. Tek yapıştırma, tek yanıt, sohbet oturumu yok. Freelance Teklif Oluşturucu Müşterinin sorununu açıklayın ve saniyeler içinde kapsamı belirlenmiş, fiyatlandırılmış, gönderilmeye hazır bir freelance teklifi alın.

Hukuk ve Uyum

Fikri Mülkiyet Hukuku Soru-Cevap Botu Hindistan fikri mülkiyet hukuku hakkında soru sorun - marka, patent, telif hakkı, tasarım ve daha fazlası; kullanılan web arama sonuçları her yanıtın üstünde listelenir. Patent FER Yanıt Oluşturucu İlk inceleme raporundaki (FER) itirazları yapıştırarak yapılandırılmış bir yanıt taslağı hazırlayın veya bir taslağı fikri mülkiyet risk incelemesi için yükleyin. Devlet Programları Uygunluk Bulucu Kısa bir soru dizisini bir kez yanıtlayın. Oturum açın, yanıtlarınızı kaydedelim ki her seferinde yeniden yazmadan hangi merkezi hükümet programlarına uygun olabileceğinizi kontrol edebilesiniz.

Gizlilik ve Güvenlik

Web Sitesi Güvenlik Taraması Bir alan adını gerçek, tekrarlanabilir güvenlik açıkları için tarayın. Her bulgu, arkasındaki gözlemi ve kendiniz doğrulamak için gereken komutu içerir. Görsel Temizleme Fotoğrafınızın hakkınızda tam olarak neyi ortaya çıkardığını görün - GPS, kamera seri numarası, adınız - ardından bunları temizleyin. Görsel hiçbir yerde saklanmadan kırpın, yeniden boyutlandırın, yüzleri bulanıklaştırın ve dönüştürün.

Geliştirici Araçları

JSON Biçimlendirici JSON'ı tek yapıştırmada güzelleştirin, küçültün ve doğrulayın - ayrıştırılamadığında tam satır ve sütun bilgisi ve belgede tam olarak ne bulunduğunun sayısı ile. Python Biçimlendirici Python'ı Black'in yapacağı şekilde, seçtiğiniz satır uzunluğu ve tırnak işareti kullanımıyla yeniden biçimlendirin - ve tam olarak kaç satırın değiştiğinin sayısı ile. HTML Görüntüleyici HTML yapıştırın ve telefon, tablet veya masaüstü genişliğinde, korumalı alanda canlı işlenmesini görün - güzelleştirme, küçültme, betikler için bir konsol ve biçimlendirmede nelerin bozuk olduğuna dair bir raporla birlikte. IP Alt Ağ Hesaplayıcı CIDR gösterimi veya alt ağ maskesi olan bir IP girin; ağ adresini, yayın adresini, kullanılabilir host aralığını ve toplam adres sayısını anında alın. Kodla / Çöz Base64, Base64URL, URL yüzde kodlaması, HTML varlıkları ve onaltılık değerleri yazarken kodlayın veya çözün, tam UTF-8 desteğiyle. Unix Zaman Damgası Dönüştürücü Saniye, milisaniye, mikrosaniye veya nanosaniye cinsinden Unix epoch zaman damgasını UTC'deki ya da dünyanın başlıca saat dilimlerinden birindeki tarihe, tarihi de tekrar zaman damgasına dönüştürün. Sistem Diyagramı Oluşturucu User -> API -> Database gibi oklar yazın, yerleşimi hazır bir mimari veya akış diyagramı alın. Genel görünüm için grupları daraltın, ayrıntılı akış için adımları numaralandırın.

Yapay Zekâ Tezgâhı

AI Playground Birden fazla LLM sağlayıcısının yanıtlarını gerçek zamanlı olarak yan yana karşılaştırın. Kendi API anahtarlarınızı getirin. Agent Playground Birden fazla sağlayıcı arasında araçlar (web araması, hesap makinesi, URL getirme) kullanan yapay zeka ajanlarını deneyimleyin.

Öğrenme

Study Buddy Üst düzey teknoloji işleri için ilk çalışma gününden kabul edilen teklife kadar mülakata hazırlık koçu: DSA, LLD, sistem tasarımı, davranışsal ve yapay zeka destekli kodlama, deneme mülakatları, özgeçmiş incelemesi, başvuru takibi ve teklif karşılaştırmasını kapsayan bir plan.

Günlük Yardımcılar

QR Kod Oluşturucu Metin, URL, WiFi bilgileri veya iletişim bilgilerinden QR kodları oluşturun - PNG görüntü veya SVG vektör olarak, seçtiğiniz hata düzeltme seviyesiyle. Birim Dönüştürücü Uzunluk, ağırlık, sıcaklık, hacim, hız, alan ve enerji birimleri arasında anında dönüştürme yapın - anlık sonuçlarla 40'tan fazla birim türü. Şifre Oluşturucu Kriptografik olarak güvenli rastgelelik kullanarak rastgele bir şifre oluşturun, uzunluğunu ve karakter türlerini ayarlayın ve gücünü bit entropi cinsinden görün. Kelime Sayacı ve Okunabilirlik Analizörü Kelimeleri, karakterleri, cümleleri ve paragrafları sayar, okuma süresini tahmin eder ve okunabilirliği puanlar - Çince, Japonca, Korece ve Tayca metinler için gerçek karakter bazlı sayım ile. Yaş ve Tarih Farkı Hesaplayıcı Birinin tam yaşını veya herhangi iki tarih arasındaki tam farkı bulun, yıl, ay ve gün cinsinden, ayrıca toplam gün ve hafta sayısı. Tarih Farkı Hesaplayıcı İki tarih arasındaki günleri, haftaları, ayları ve iş günlerini sayın veya bir tarihe gün ekleyip çıkarın. Yüzde Hesaplayıcı Y'nin X%'ini, bir sayının başka bir sayının yüzde kaçı olduğunu, iki sayı arasındaki yüzde artış veya azalışı ya da ters yüzdeyi hesaplayın - tek bir araçta dört yaygın hesaplama. SIP Hesaplama Aylık yatırımın yıllık artış, başlangıç tutarı ve enflasyonla neye ulaştığını görün ya da bir hedefin gerektirdiği aylık tutarı bulun. VKİ Hesaplayıcı Boy ve kilonuzdan, metrik veya emperyal birimlerle Vücut Kitle İndeksinizi (VKİ) hesaplayın; DSÖ yetişkin kategorilerine göre sınıflandırılır: zayıf, normal, fazla kilolu, obez.
Giriş yap Başlayın
Tüm araçlarGeliştirici Araçları

Python Biçimlendirici

Python'u Black'in yapacağı şekilde yeniden biçimlendirin - ve tam olarak kaç satırın değiştiğini görün.

Kodunuz

0 karakter

Biçimlendirildi

 

Hakkında Python Biçimlendirici

Bu araç, çoğu Python projesinin zaten üzerinde anlaştığı biçimlendirici olan Black'i, yapıştırdığınız şey üzerinde, seçtiğiniz satır uzunluğu ve tırnak işareti işleme ile çalıştırır. Dosya ayrıştırılamıyorsa hangi satırda olduğunu söyler, zaten biçimlendirilmişse bir şey yapmış gibi davranmak yerine bunu da söyler.

Ne işe yarar

  • 79, 88, 100 veya 120 sütunda Black biçimlendirmesi.
  • "Sadece kontrol et" modu: bir dosyanın değiştirip değiştirmeyeceğini, onu değiştirmeden öğrenin.
  • Kendi tırnak işareti stilinizi koruyun veya Black'in onu normalleştirmesine izin verin.
  • Bir koleksiyonu açık tutan sihirli sondaki virgüle uyun veya onu yok sayın.
  • Sözdizimi sürüme bağlı olduğunda belirli bir Python sürümünü hedefleyin.
  • Sözdizimi hataları satırı, sütunu ve etrafındaki kodu bildirir.
  • Kaç satırın eklendiğini ve kaldırıldığını, ayrıca dosyanın şeklini bildirir.

Nasıl çalışır

  1. 1 Kodu, ya da bir dosyanın tamamını yapıştırın.
  2. 2 Bir satır uzunluğu ve önemsediğiniz seçenekleri seçin.
  3. 3 Biçimlendir'e basın, ardından sonucu kopyalayın veya indirin.

Kodunuz asla çalıştırılmaz

Python'u biçimlendirmek onu çalıştırmayı gerektirmez. Kod bir sözdizimi ağacına ayrıştırılır ve tamamen bellekte, bu ağaçtan yeniden yazılır - asla bir dosyaya yazılmaz, asla içe aktarılmaz ve asla çalıştırılmaz. Yapıştırdığınızı çalıştıran bir biçimlendirici, metin kutusu olan bir uzak kabuk olurdu.

Neden Black, kendi görüşümüz değil

Black, AST'yi koruyan bir dönüşümdür: çıkan kod, giren kodla aynı programdır. Bu özellik, bir biçimlendiriciye güvenilebilmesinin tüm nedenidir ve bu aracın hiçbir yerinde bir dil modelinin yer almamasının nedenidir. Kodu düzenlemesi istenen bir model, bunu yaparken ara sıra bir satırı yeniden yazar ve çalışan koddaki sessiz bir değişiklik, bir biçimlendiricinin göze alamayacağı tek hatadır.

Sadece kontrol et

CI'nin sorduğu aynı soru: bu dosya değişir miydi? Kontrol modu orijinal kodunuzu değiştirmeden döndürür ve Black'in onu yeniden biçimlendirip biçimlendirmeyeceğini, kaç satır olacağını bildirir. Yerel olarak yeniden oluşturamadığınız bir dosyada bir ardışık düzenin neden başarısız olduğunu öğrenmenin hızlı yoludur.

Sihirli son virgül ve fmt: off, çözümlü örnekler

Son öğeden sonraki virgül, Black'e bir çağrıyı veya koleksiyonu satır başına bir öğe olacak şekilde tutmasını söyler: result = compute(alpha, beta,) dört satır olarak döner, alpha, ve beta, ayrı satırlarda yer alır. Sihirli son virgülü yoksay seçeneğini işaretlerseniz aynı girdi, satır uzunluğuna sığdığında result = compute(alpha, beta) olur. Matris gibi elle hizalanmış bir bloğu korumak için üstündeki satıra # fmt: off, altına # fmt: on yazın; Black aradaki her şeyi yazdığınız gibi bırakır. Satır sonundaki # fmt: skip yalnızca o satırı korur. Bunlar Black'in kendi yorumlarıdır, bu yüzden projenizin CI'ı Black çalıştırdığında da geçerlidir.

Sorular

Kodum yükleniyor veya saklanıyor mu?

Sunucuya gönderilir, bellekte biçimlendirilir ve aynı yanıtta geri döndürülür. Hiçbir şey diske yazılmaz, önbelleğe alınmaz veya günlüğe kaydedilmez ve kullanım kaydı sadece sayıları tutar - boyut, seçenekler, kaç satır değişti - asla kodu değil.

Biçimlendirme kodumun ne yaptığını değiştirir mi?

Hayır. Black davranışı değil düzeni değiştirir, ama boşluk kaydırmaktan fazlasını yapar. Gereksiz parantezleri kaldırır (x = (1), x = 1 olur), sayı öneklerini ve üslerini küçük harfe çevirir (0XABCDEF, 0xABCDEF olur; 1E5, 1e5 olur), bir çağrıyı birkaç satıra böldüğünde sona virgül ekler, art arda gelen boş satırları azaltır ve docstring içindeki boşlukları kırpar (""" Doc. """, """Doc.""" olur). Bu son değişiklik __doc__ metnini değiştirir; bu yalnızca kodunuz kendi docstring'lerini okuyorsa önemlidir.

Dosyam neden hiç yeniden biçimlendirilmedi?

Çünkü seçtiğiniz satır uzunluğunda zaten biçimlendirilmişti. Araç, sessizce bir kopya döndürmek yerine "zaten biçimlendirilmiş" der.

İçe aktarmalarımı sıralar mı?

Hayır. İçe aktarma sıralaması Black'in değil isort'un işidir ve ikisi burada yapılsa sizi şaşırtacak kadar sık anlaşmazlığa düşer.

Sözdizimi hatası olan bir dosyayı biçimlendirebilir mi?

Hiçbir biçimlendirici yapamaz - ayrıştırılamayan bir dosyanın yeniden yazılacak bir yapısı yoktur. Düzeltip tekrar deneyebilmeniz için satırı, sütunu ve çevresindeki kodu alırsınız.

PEP 8'i takip ediyor mu?

Black, bilinen bir sapma ile PEP 8 uyumludur: varsayılan satır uzunluğu 79 değil 88'dir. Daha sıkı rakama gerek duyuyorsanız satır uzunluğu seçicisinde 79'u seçin.

Ne kadar büyük bir dosyayı biçimlendirebilirim?

Çalıştırma başına 400.000 karaktere kadar. Biçimlendirme 10 saniye sonra durdurulur; buna yalnızca çok büyük veya çok tekrarlı dosyalar ulaşır. Her IP adresi 10 dakikada 30 biçimlendirme yapabilir.

Editörümde, pre-commit'te veya CI'da aynı biçimlendirmeyi nasıl alırım?

Bu sayfa Black kullanır ve sürümü geniş ekranlarda sayfa üst bilgisinde gösterilir. Black proje ayarlarını pyproject.toml dosyasındaki [tool.black] bölümünden, seçeneklerin uzun adlarıyla okur: seçtiğiniz "Satır uzunluğu" için line-length = 88, "Tırnak işaretlerimi koru" işaretliyse skip-string-normalization = true, "Sihirli son virgülü yoksay" için skip-magic-trailing-comma = true ve sabit bir "Hedef" değeri için target-version = ["py311"]. Editör eklentileri ve pre-commit kancası aynı dosyayı okur. Biçimlendirmek için black . ve CI'da black --check --diff . çalıştırın: hiçbir şeyi değiştirmez ve bir dosya yeniden biçimlendirilecekse 1 koduyla çıkar. Bu sayfayla aynı Black sürümünü sabitleyin, çünkü her takvim yılının ilk sürümü kararlı stili değiştirebilir.

Sonuç Ruff biçimlendiricisiyle (ruff format) aynı mı?

Neredeyse her zaman, ama bayt bayt değil. Ruff biçimlendiricisi Black'in doğrudan yerine geçecek şekilde tasarlanmıştır ve Ruff belgelerine göre Django ve Zulip gibi Black ile biçimlendirilmiş büyük projelerde satırların %99,9'undan fazlası aynı çıkar. Black'ten hiç geçmemiş kodda, özellikle satır sonu yorumlarında daha çok ayrışır ve belgeleri bilinçli farklarını listeler. Varsayılan satır uzunluğu da 88'dir ve [tool.ruff] altında line-length ile ayarlanır; [tool.ruff.format] altındaki quote-style = "preserve" "Tırnak işaretlerimi koru" seçeneğine, skip-magic-trailing-comma = true ise "Sihirli son virgülü yoksay" seçeneğine karşılık gelir. CI'nız ruff format --check çalıştırıyorsa dosyayı bu sayfayla değil Ruff ile test edin.