Python 3.9 : Şimdi Yeni Ne Var? Ödeme Yapabileceğiniz Harika Özellikler
Yayınlanan: 2020-12-01Python, geliştiriciler arasında tüm zamanların en sevilen ve en çok tercih edilen dilidir. Programlama dillerini popülerliklerine göre sıralayan bir programlama topluluğu olan Tiobe endeksine göre Python, Java'yı geride bırakan ikinci sırada yer aldı. Python mükemmel bir topluluk desteğine sahiptir ve sadeliği ve kullanımı kolay doğası nedeniyle, yeni başlayanlar en azından bu dilde ustalaşmayı amaçlar.
Bu dil son yıllarda veri analitiği, makine öğrenimi, web geliştirme, bilgisayar uygulaması, IoT veya diğer geliştirme alanlarında kullanımını bulan bu dilin en son sürümü Python 3.9 kararlı çıktı ve Ayrıştırıcıdan ek işlevlere kadar birçok değişiklik, özellik yayınları zaman çizelgesinde değişir. Bu değişikliklere ayrıntılı olarak bakalım:
İçindekiler
Yeni Operatör
Sözlüklerle uğraşırken, çoğu zaman onları diğer sözlüklerden girdilerle birleştirmemiz veya güncellememiz gerekir. Daha önce bu, sözlük nesnesinin update özniteliği kullanılarak yapılabilirdi: first_dict.update(second_dict) ancak bu yaklaşımdaki sorun, değişikliklerin yerinde yapılması ve orijinal değerlerin değiştirilmesidir.
Geçici bir değişiklik yapmak için, önceki değeri saklamak için başka bir değişken gerekir. Bu yeni sürüm, sözlükleri birleştirmek için kullanılabilecek birleştirme operatörü (|) olarak bilinen yeni bir operatörü tanıttı. İşte bunu anlamak için bir kod örneği:
A = { “isim” : “Yazar”, “şirket” : “upGrad”}
B = { “durum”: “eğitmen”}
yazdır (A|B)
Çıktı: { "isim" : "Yazar", "şirket" : "upGrad", "durum" : "eğitmen"}
| birleştirme operatörü gibidir, ancak orijinal değeri güncellemek istiyorsanız, sadece |= operatörünü kullanabilirsiniz. Önceki örneğe devam ederek, A |=B, A sözlüğünün değerini güncelleyecektir.
Ayrıca okuyun: Hindistan'da Python Geliştirici Maaşı
Dizi İşlemleri
Metin işleme, özellikle NLP sırasında veri bilimi yaşam döngüsünün önemli bir bölümünü oluşturur. Bölme, birleştirme, değiştirme ve daha pek çok farklı türde dize işlemlerini gerçekleştirmek için farklı işlevler vardır. Bu mirasa katılarak, removesuffix() ve removeprefix() olmak üzere iki yeni işlem eklenmiştir.
Adından da anlaşılacağı gibi, bunlar bir dizeden önekleri ve sonekleri kaldırmak için kullanılır. Dize nesnesi kullanılarak erişilebilirler. Bu kaldırma, normal ifadeler ve dizelerin dilimlenmesi kullanılarak kolayca yapılabilir, ancak şimdi bu işlevselliğe yerleşik kitaplıklarda sahibiz. Örnekleme amacıyla basit bir örnek:
'@something_new'.removeprefix('@')
'something_231'.removesufix('231')
Çıktı:
yeni bir şey
bir şey_
Değiştirilmiş Saat Dilimi Modülü
Bu sürüm ayrıca standart kitaplıktaki IANA veritabanını destekleyen bölge bilgisi adlı yeni bir modül tanıttı. Standart kitaplıktan DateTime nesnesindeki saat dilimini belirtebiliriz, ancak kullanıcı zaman dilimleri için karmaşık kurallar oluşturabilir. PEP 615'e göre, kullanıcı tabanı UTC, IANA veya sistem yerel saat dilimi gibi ana saat dilimlerine daha yatkındır. Artık “kıta/şehir” biçimindeki yapılandırma arama yolunu belirterek bir bölge bilgisi nesnesi oluşturabilirsiniz. Örneğin,
zoneinfo'dan ZoneInfo'yu içe aktar
tarih saatinden içe aktarma tarih saatinden
dt = tarihsaat(2020, 11, 15, 01, tzinfo=ZoneInfo(“Asya/Kolkata”))
dt.tzname()
Çıktı: 'IST'
Şunlar hakkında bilgi edinin: En iyi Python araçları
Yeni Matematik Fonksiyonları
Matematik modülü, genel matematikte kullanılan tüm sayısal işlemlerden oluşur. İster sinüs, kosinüs fonksiyonları, sayıları belirli yerlere yuvarlama veya pi veya üstel gibi evrensel sabitler olsun, matematik modülü hemen hemen tüm fonksiyon türlerini kapsar.
Bu listeye üç yeni fonksiyon eklendi ve math.lcm(), math.nextafter(), math.ulp() var. LCM (En Az Ortak Çoklu) çok yaygın olarak kullanılan bir fonksiyon iken, diğer ikisi çok fazla kullanılmamaktadır. Daha önce, LCM işlemi için açıkça bir işlev oluşturmamız gerekiyordu, ancak şimdi bu yeni sürümden başlayarak, standart kitaplıkta yerleşik bir işlevselliğe sahibiz. Bu işlevi kullanmak için aramanız yeterlidir:

ithalat matematik
matematik.lcm(2,3)
Çıkış: 6
Bu fonksiyonda herhangi bir argüman iletilmezse 1 döndürür ve bunlardan biri sıfırsa 0 döndürür.
Yüksek Performanslı Ayrıştırıcı
Özellik düzeyindeki tüm yeni eklemelerin yanı sıra, Python dil ayrıştırıcısı, PEG ayrıştırıcı olarak bilinen yeni, daha hızlı teknolojiyle güncellendi. Bu etki bu sürüme değil, yakında çıkacak olan Python 3.10'a yansıyacaktır. Python yaratıldığı günden beri, kodu yukarıdan aşağıya ve soldan sağa ayrıştıran LL(1) ayrıştırıcısını kullanıyor. Bu ayrıştırıcı, bağlamdan bağımsız dilbilgisine dayanmaktadır ve bu nedenle, dizelerin birden fazla ayrıştırma ağacına sahip olabileceği ve ara adımların sayısını artırabileceği belirsizdir. Yeni PEG ayrıştırıcı, önceki ayrıştırıcının belirsizliğini ortadan kaldıran yalnızca bir geçerli AST (Özet Sözdizimi Ağaçları) oluşturur.
Yeni Rastgele İşlev ve Yayın Döngüsündeki Değişiklik
Random.random modülünde, rastgele n bayt döndüren yeni yöntem randbytes(n) eklenmiştir. Diğer rastgele fonksiyonlara çok benzer. Ayrıca daha önce Python her 18 ayda bir 12 aya indirilmiş yeni bir sürüm yayınlar.
Dünyanın en iyi Üniversitelerinden veri bilimi sertifikası alın . Kariyerinizi hızlandırmak için Yönetici PG Programları, İleri Düzey Sertifika Programları veya Yüksek Lisans Programları öğrenin.
Çözüm
Yazılımın yeni bir sürümü yayınlandığında, birçok yeni değişiklikle birlikte gelir. Burada Python'da yeni operatör, eklenen özellikler ve iyileştirilmiş ayrıştırıcı içeren bazı önemli ve vurgulanan değişiklikleri tartıştık.
Diğer modüllerde de ast, asyncio, concurrent.futures, multiprocessing, XML gibi birçok yeni değişiklik var. Bazı işlevler amortismana tabi tutuldu ve liste uzayıp gidiyor. Yeni Python 3.9'daki güncellemelerin tam listesi için resmi belgelere göz atabilirsiniz.
Python, veri bilimi hakkında bilgi edinmek istiyorsanız, çalışan profesyoneller için oluşturulan ve 10'dan fazla vaka çalışması ve proje, pratik uygulamalı atölye çalışmaları, endüstri uzmanlarıyla mentorluk sunan IIIT-B & upGrad'ın Veri Biliminde PG Diplomasına göz atın. Sektör danışmanlarıyla bire bir, en iyi firmalarla 400+ saat öğrenim ve iş yardımı.
Python neden diğer kodlama dillerine göre tercih ediliyor?
Python'un diğer dillere göre tercih edilmesinin birçok nedeni vardır. İlk olarak, Python'un kodları okunaklı ve daha önce hiç yazmamış geliştiriciler tarafından bile anlaşılabilir. Python, bilim camiasında yaygındır ve çok sayıda araştırmacı ve profesör Python'un kullanıcıları arasındadır. Python üzerinde yapılan kodlar geliştiriciler tarafından paylaşılabilir, kopyalanabilir ve değiştirilebilir. Ayrıca Python, güçlü bir topluluğa sahiptir ve özgür ve açık bir programlama dili olduğu için hızla gelişmektedir. Python, çok çeşitli sistemlerle uyumludur. Diğer dillerde yaygın olan zorluklarla karşılaşmadıkları için geliştiricilere yardımcı olur.
Python'da math.nextafter() ve math.ulp() kullanımı nedir?
nextafter() ve ulp(), Python 3.9.0'daki matematik kitaplığına eklenen iki yeni işlevdir. nextafter() işlevi, x'ten sonra y yönünde bir sonraki kayan nokta değerini döndürür. x, y'ye eşitse, y değeri döndürülür. Sözdizimi, matematik.nextafter(x, y) şeklindedir; burada x ve y, iki tam sayı/kayan nokta değeridir. ULP, Son Yerdeki Birim anlamına gelen bir kısaltmadır. ULP, sayısal analiz ve bilgisayar bilimlerinde kayan nokta değerleri arasındaki boşluktur. math.ulp() işlevi, kayan nokta x'in en az anlamlı bitinin değerini döndürür. Sözdizimi matematiksel ulp(x)'dir ve girilecek argüman, x, ulp'si döndürülmesi gereken bir kayan nokta olmalıdır.
Python'da Ayrıştırıcı nedir?
Sözdizimi analizi adımı sırasında, bir derleyici, sözlüksel çözümleyici tarafından oluşturulan belirteçlerin dilin sözdizim kurallarına göre düzenlenip düzenlenmediğini inceler. Bunun için bir ayrıştırıcı sorumludur. Ayrıştırıcı, sözcük çözümleyicisinden bir dizi belirteç alır ve dizenin kaynak dilin dilbilgisine karşılık geldiğini doğrular. Herhangi bir sözdizimi sorunu algılanır ve raporlanır ve geliştiricilerin ara kod oluşturabileceği bir ayrıştırma ağacı üretilir. Ayrıştırıcı modülü ayrıca Python'un dahili ayrıştırıcısı ve bayt kodu derleyicisi ile iletişim kurar. Bu arabirimin ana amacı, Python kodlarının bir Python ifadesinin ayrıştırma ağaçlarını değiştirmesine ve ondan çalışan kodlar üretmesine izin vermektir.