Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi gerçekleştirdiğinizde, bir ortaklık komisyonu kazanabiliriz. Devamını oku.

Çalışan kod yazmak her zaman yeterli değildir; anlaşılması kolay, iyi yapılandırılmış kod yazmaya çalışmalısınız. Temiz kod, sizin ve diğerlerinin yazılımınızı korumasını kolaylaştıracaktır.

Python, daha temiz kod yazmanıza yardımcı olabilecek birçok özellik ve işleve sahiptir. İşte en iyilerinden bazıları.

1. Bağlam Yöneticisi ile Kaynak Kapatmayı Otomatikleştirin

Kodunuz çok sayıda kaynakla etkileşim halindeyken kaynakları el ile kapatmak sakıncalı olabilir. Bir kaynağı kapatmayı unutabilirsiniz. Bu, programınızın sistem kaynaklarını verimsiz bir şekilde kullanmasına neden olabilir ve bu da bellek sızıntısı.

Bu kod bir dosyayı açar, ardından manuel olarak kapatır:

dosya = aç("test.txt", 'R')
dosya_içeriği = dosya.oku()
dosya.kapat()
kelimeler = file_contents.split(' ')
kelime_sayısı = len (kelimeler)
yazdır (kelime_sayısı)
instagram viewer

Bir içerik yöneticisi kullanarak dosyanın kapanmasını otomatikleştirebilirsiniz. Bağlam yöneticileri kaynakları sizin yerinize yönetir, böylece bunları manuel olarak yönetmeyi hatırlamanız gerekmez. Kullan ile bir kaynağı yönetmek için bir bağlam oluşturmak için ifade:

ile açık("test.txt", 'R') gibi dosya:
dosya_içeriği = dosya.oku()
kelimeler = file_contents.split(' ')
kelime_sayısı = len (kelimeler)
yazdır (kelime_sayısı)

Bu bloktaki kod, dosya nesnesinin bağlamında çalışır. açık İadeler. Python, kod bu bağlamdan ayrıldığında, bir istisna oluşsa bile bu dosyayı otomatik olarak kapatır.

2. Temizleyici Koşullu İfadeler Yazma

İle uğraşırken kendinizi çok fazla gereksiz kod yazarken bulabilirsiniz. if-else ifadeleri. Python, daha kompakt ifadeler yazmanıza yardımcı olacak üçlü işleçlere sahiptir. Aşağıdaki kod bloğu normal bir if-else deyimini gösterir.

durum = Doğru

eğer durum:
x = 1
başka:
x = 0

yazdır (x)

Koşulu tek bir kod satırına yazmanıza izin veren üçlü bir işleç kullanarak bu kodu yeniden yazabilirsiniz.

durum = Doğru
x = 1eğer durum başka0
yazdır (x)

Basit mantığı uygularken üçlü işleçler kullanmanız gerektiğine dikkat etmek önemlidir. Daha karmaşık mantıkta ve iç içe koşullu ifadelerde, üçlü işleci anlamak zorlaşabilir.

3. Numaralandırma Fonksiyonu ile Öğeleri Takip Etme

Bir Python listesi üzerinde yineleme yaparken, geçerli öğenin dizinine iki şekilde erişebilirsiniz. Bunun bir yolu geleneksel for döngüsünü kullanmaktır. Bu iyi çalışıyor, ancak kod olabileceği kadar temiz değil. Ayrıca dizini manuel olarak başlatmanızı gerektirir.

arabalar = ["Bugatti", 'Mercedes', 'Toyota']
dizin = 0

için araba içinde arabalar:
yazdır (indeks, araba)
dizin += 1

Diğer yol, Python yerleşik numaralandırma işlevini kullanmaktır. Bu, döngü sırasında dizine ve listedeki karşılık gelen değere erişmenizi sağlar.

arabalar = ["Bugatti", 'Mercedes', 'Toyota']

için indeks, araba içinde numaralandırmak (arabalar):
yazdır (indeks, araba)

Artık dizini manuel olarak takip etmenize gerek yok.

4. Zip İşleviyle Birkaç Liste Üzerinde Döngü Yapma

Aynı anda birkaç liste üzerinde döngü yapmak için numaralandırma işlevini de kullanabilirsiniz. İlk listenin dizinini alın, ardından diğer listelerdeki karşılık gelen değerlere erişmek için kullanın.

ingilizce_isimler = ['yiyecek', 'su', 'araba']
İspanyolca_isimler = ['gıda', "su", 'Oto']

için indeks, isim içinde numaralandırmak (english_names):
ispanyolca = ispanyol_isimleri [dizin]
Yazdır (F' {isim} ispanyolca {İspanyol}')

Bu iyi çalışıyor, ancak liste sayısı artarsa ​​çok fazla gereksiz kod yazmanız gerekecek. Daha temiz kod yazmak için zip işlevini kullanabilir ve listenizin adlarını ona iletebilirsiniz.

ingilizce_isimler = ['yiyecek', 'su', 'araba']
İspanyolca_isimler = ['gıda', "su", 'Oto']

için ingilizce ispanyolca içinde zip (english_names, ispanyol_adları):
Yazdır(F' {İngilizce} ispanyolca {İspanyol}')

Numaralandırma işlevini kullanmaya devam etmelisiniz. tek bir liste üzerinde döngü. Ancak, birkaç listeyi birlikte döngü halinde yürütüyorsanız, zip işlevini kullanmayı düşünün.

Hassas bilgileri girerken, giriş ekranda düz metin olarak görünmemelidir. Python'da girdi almanın olağan yolu, girdi işlevini kullanmaktır:

kullanıcı adı = giriş('Kullanıcı adı: ')
şifre = giriş('Şifre: ')
Yazdır('Giriş...')

Ancak giriş işlevi, parolayı yazarken ekranda düz metin olarak görünür hale getirir. Parolanın ekranda görüntülenmediğinden emin olmak için bunun yerine getpass işlevini kullanmalısınız:

itibaren geçmek içe aktarmak geçmek
kullanıcı adı = giriş('Kullanıcı adı: ')
şifre = geçiş('Şifre:')
Yazdır('Giriş...')

getpass modülü, Python'un standart kitaplığının bir parçasıdır, dolayısıyla onu kurmanıza gerek yoktur.

6. Alt Çizgi Yer Tutucuları Kullanarak Büyük Sayıları Okunabilir Hale Getirme

Programınızda büyük sayılarla uğraşırken, bir bakışta okumak çok zor olabilir. Değişkenlere yanlış sayılar atamak hatalı bir programa yol açar ve bu hatayı tespit etmek çok zor olabilir.

sayı1 = 10000000000
say2 = 100000000
toplam = sayi1 + sayi2
yazdır (toplam)

Büyük sayıları daha okunabilir hale getirmenin yaygın bir yolu olan binlik grupları ayırmak için alt çizgi kullanarak yukarıdaki kodu yeniden yazabilirsiniz.

sayı1 = 10_000_000_000
say2 = 100_000_000
toplam = sayi1 + sayi2
Yazdır(F'{Toplam:,}')

Yazdırma işlevindeki f dizesi, çıktıyı binlik ayırıcıyı kullanarak ayırır.

7. Bir Modül Hakkında Daha Fazla Bilgi Almak İçin Yardım İşlevini Kullanma

Yardım işlevi Python'da çok önemlidir. Kurduğunuz bir modülü nasıl kullanacağınızı size bildirecektir. Kullanmak için modülü kurun, ardından bir terminalde Python yorumlayıcısını çalıştırın ve modülü kurduğunuz yolu gösterin. Modülü içe aktarın ve son olarak modülün adını yardım işlevine iletin.

Hangi yöntemleri ve öznitelikleri kullanabileceğinizi keşfetmek için yardım işlevini dir işleviyle değiştirin.

dir işlevi, modülün desteklediği tüm belgeleri değil, yöntemleri ve öznitelikleri döndürür. Bu, modülün ne yaptığına bir göz atmak istediğinizde kullanışlıdır.

Daha Temiz Python Kodu Yazma

Python çok çeşitli bir dildir. Diğer dillerde olduğu gibi, zamanla daha temiz Python kodu yazma konusunda daha iyi hale geleceksiniz.

Python'un birçok yerleşik modülü ve işlevi vardır. Bazı durumlarda, belirli bir işlevin varlığı hakkında bilgi sahibi olmadığınız için okunması zor kodlar yazabilirsiniz. Daha fazla bilgi sahibi olduğunuzdan emin olmak için nasıl daha iyi kod yazılacağına dair daha fazla makale okumalısınız.