Pydantic Veri Sınıflarıyla Veri İşleme Nasıl Geliştirilir?

Pydantic Veri Siniflariyla Veri Isleme Nasil Gelistirilir



Pydantic veri sınıfları Python'da veri işlemeyi iyileştirmek için gelişmiş bir çözüm sunar. Veri doğrulama çerçevesi olarak çalışmak, yapılandırılmış verileri veri sınıflarıyla entegre ederek oluşturma sürecini basitleştirir. Verilerin doğrulanmasını, hata raporlamayı ve veri türü dönüşümlerini otomatikleştirir. Bu, verilerin belirtilen gereksinimlerle uyumlu olmasını sağlar. Ayrıca varsayılan değerleri, isteğe bağlı alanları ve karmaşık veri yapılarını da destekler. Kısacası Pydantic veri sınıfları, programcıların veri işleme uygulamalarını optimize etmelerine yardımcı olarak etkili ve güvenilir kodlama sonuçlarına yol açar.

Sözdizimi:

Python'daki Pydantic veri sınıflarını kullanarak verilerin yönetilme şeklini geliştirmenin basit ama etkili bir yolu, esasen verilerimizin nasıl görünmesi gerektiğine dair bir model oluşturduğumuz sınıf dekoratörünü kullanmaktır. Bu, verilerimize net bir yapı kazandırmak gibidir. Dolayısıyla, veri sınıfını tanımlamaya yönelik sözdizimi aşağıdaki gibidir:







sınıf model adı ( Temel Model )

“model_name”, oluşturmak istediğimiz modelin adını sunar ve Pydantic'in “BaseModel”i, verinin belirlediğimiz kurallara uymasını ve giriş parametresi olarak modele iletilmesini sağlayan bir koruyucu gibi davranır. Sınıfın içinde her bir veri parçasının ne tür bilgiler içermesi gerektiğini tanımlarız. Bu süreç, veri sınıfının bir örneğini oluşturduğumuzda, sağladığımız bilgilerin tanımladığımız bilgilerle eşleşmesini sağlar.



Yöntem 1: Pydantic'in Dataclass'ı ile Gelişmiş Veri İşleme

Koleksiyonumuzdaki kitaplarla ilgili bilgileri düzenlemek için basit bir uygulama geliştirdiğimizi düşünün. Bu amaçla topladığımız verilerin doğru, tutarlı ve iyi yapılandırılmış olduğundan emin olmak istiyoruz. Pydantic veri sınıflarının süreci basitleştirmek ve geliştirmek için devreye girdiği yer burasıdır.



Örnekle başlamak, bir Pydantic Dataclass tanımlamayı gerektirir. Yani Kitapların ayrıntılarını temsil eden “Kitaplar” adında bir Pydantic veri sınıfı tanımlayarak başlıyoruz. Pydantic'in veri sınıfını tanımlamak için tüm Pydantic paketlerinin projeden önce kurulduğundan emin olmamız gerekir.





itibaren pıdantik içe aktarmak Temel Model

Sınıf dekoratörünü kullanarak Pydantic’in BaseModel’inden miras alan “Book” sınıfını oluşturuyoruz. Sınıfın içinde, her biri ilgili veri türüyle ilişkilendirilen başlık, yazar ve yayın_yılı gibi nitelikleri belirtiriz.

sınıf Kitap ( Temel Model ) :

başlık: cadde

yazar: cadde

çıkış tarihi: int

Bir sınıf modeli oluşturduktan sonra, “film” verilerini işlemek için “Kitap” veri sınıfının gücünden yararlanarak Pydantic veri sınıfını kullanıyoruz:



Bu bölümde kitapla ilgili detayları giren bir kullanıcıyı taklit ediyoruz. “Kitap” veri sınıfının modeli, kendine özgü veri türleri ile birlikte başlık, yazar ve yayınlanma yılı gibi özelliklere sahiptir. Yani bu kısımda yani “giriş” kısmında onların değerlerini belirtiyoruz.

giriş = {

'başlık' : 'Acı çekmek' ,

'yazar' : 'Adem' ,

'çıkış tarihi' : 2023

}

Girişte kitap modelinin niteliklerine ilişkin detayların belirtilmesinden sonra, bu detayları kullanarak sağlanan verilerle bir “Kitap” örneği oluşturuyoruz; bu, Pydantic'in girişi tanımlanmış veri yapısına göre otomatik olarak doğrulamasını sağlamak için yapılır. Tam sayı olmayan bir yayın yılı veya eksik bir başlık gibi herhangi bir tutarsızlık veya hata varsa Pydantic, kullanıcı dostu bir açıklamayla birlikte hızla bir hata ortaya çıkarır.

denemek :

kitap = Kitap ( ** giriş )

Yazdır ( 'Kitap ayrıntıları:' , kitap. başlık , kitap. yazar , kitap. çıkış tarihi )

hariç İstisna gibi Bu:

Yazdır ( 'Hata:' , Bu )

Pydantic veri sınıflarıyla deneyimli, gelişmiş veri işleme için, veri doğrulama ve tutarlılığa yönelik yerleşik bir mekanizma alıyoruz. Çeşitli veri senaryolarını kapsayacak şekilde isteğe bağlı alanları, varsayılan değerleri ve karmaşık iç içe geçmiş yapıları dahil edebiliriz. Bu, verilerimizin düzenli ve doğru biçimlendirilmiş kalmasını garanti eder.

Bu adım, Pydantic veri sınıflarının isteğe bağlı alanlar, varsayılan değerler ve iç içe geçmiş yapılar gibi özellikler aracılığıyla nasıl gelişmiş veri işleme yetenekleri sunduğunu araştırıyor.

İsteğe bağlı alanların ve varsayılan değerlerin nasıl ekleneceğini gösterdiğimiz bir örnek:

Kullanıcıların kitaplarla ilgili tür ve çalışma süresi gibi ek ayrıntıları girmesine izin vermek istediğimizi varsayalım. Ancak bu ayrıntılar her zaman mevcut olmayabilir. Pydantic veri sınıfları ile alanları isteğe bağlı hale getirerek ve hatta varsayılan değerleri ayarlayarak bunu kolayca başarabiliriz.

Bu örnekte 'Film' veri sınıfı iki yeni alan içermektedir: kitabın yazıldığı dil ve sayfa sayısı. 'Dil' alanının varsayılan değeri 'Bilinmeyen'dir; bu, kullanıcı bu ayrıntıyı sağlamadığında varsayılan olarak 'Bilinmeyen' olacağını gösterir. 'Sayfa sayısı' alanı isteğe bağlıdır ve boş bırakılabilir (yok olarak ayarlanabilir).

itibaren pıdantik içe aktarmak Temel Model
sınıf Kitap ( Temel Model ) :
başlık: cadde
yazar: cadde
çıkış tarihi: int
dil: cadde = 'Bilinmeyen'
sayfalar: int = Hiçbiri
giriş = {
'başlık' : 'Acı çekmek' ,
'yazar' : 'Adem' ,
'çıkış tarihi' : 2023 ,
'dil' : 'İngilizce' ,
'sayfalar' : 2. 3. 4
}
kitap = Kitap ( ** giriş )
Yazdır ( 'Kitap ayrıntıları:' , kitap. başlık , kitap. yazar , kitap. çıkış tarihi , kitap. dil , kitap. sayfalar )

Sonuçları gözlemlemek için bu kod satırlarını kopyalayıp derleyiciye yapıştırabiliriz:

itibaren pıdantik içe aktarmak Temel Model
sınıf Kitap ( Temel Model ) :
başlık: cadde
yazar: cadde
çıkış tarihi: int
giriş = {
'başlık' : 'Acı çekmek' ,
'yazar' : 'Adem' ,
'çıkış tarihi' : 2023
}

# Kitap örneği oluşturma
denemek :
kitap = Kitap ( ** giriş )
Yazdır ( 'Kitap ayrıntıları:' , kitap. başlık , kitap. yazar , kitap. çıkış tarihi )
hariç İstisna gibi Bu:
Yazdır ( 'Hata:' , Bu )

Pydantic, bu isteğe bağlı alanları ve varsayılan değerleri ekleyerek, kullanıcılar belirli ayrıntıları vermese bile verilerin iyi yapılandırılmış ve tutarlı kalmasını sağlar.

Yöntem 2: Öğrenci Kayıt Formu için Pydantic Dataclass ile Veri İşleme

Bir okul etkinliği için kayıt formu hazırladığımızı düşünün. İnsanların bilgilerini girmesi gerekiyor ve biz hatalardan kaçınmak istiyoruz. Pydantic veri sınıflarının yardımcı olduğu yer burasıdır. Verilerin doğru olduğundan emin olurlar ve bunu kolayca hallederler.

Python projesine gerekli paketleri getirdikten sonra katılımcı detayları için “Student” adında bir Pydantic dataclass oluşturarak Pydantic dataclass tanımlıyoruz.

itibaren pıdantik içe aktarmak Temel Model

“Öğrenci” sınıfını ayarlamak için sınıf dekoratörünü kullanın. Pydantic'in BaseModel'inden miras alır. İçeride ad, e-posta, departman ve telefon gibi özellikleri her biri kendi veri türüne göre adlandırıyoruz.

sınıf Öğrenci ( Temel Model ) :

isim: cadde

e-posta : cadde

departman: cadde

telefon: cadde

Artık Pydantic veri sınıfını kullanarak öğrenci verilerini yönetmek için 'Öğrenci' veri sınıfıyla çalışın:

bilgi = {

'isim' : 'XYZ' ,

'e-posta' : 'xyz@öğrenci.com' ,

'departman' : 'Andrew' ,

'telefon' : '0003-4567234'

}

Bu bölümde birisinin kaydolduğunu varsayıyoruz. Onların verilerini kullanarak “Student” örneği yaptığımızda Pydantic yapıya uyup uymadığını kontrol ediyor. '@' içermeyen bir e-posta veya dize olmayan bir departman gibi bir hata varsa Pydantic durur ve sorunu açıklar.

öğrenci = Öğrenci ( **bilgi )

Yazdır ( 'Öğrenci ayrıntıları:' , öğrenci )

Pydantic veri sınıflarını kullanan geliştirilmiş veri işleme, bize kullanıma hazır bir veri sağlar. Daha fazla alan ekleyebilir, varsayılanları ayarlayabilir veya karmaşık veri kurulumlarıyla çalışabiliriz. Bütün bunlar verilerimizin düzenli kalmasını garanti eder.

Gözlem amacıyla çıktının kodu ve snippet'i aşağıda belirtilmiştir:

itibaren pıdantik içe aktarmak Temel Model

sınıf Öğrenci ( Temel Model ) :
isim: cadde
e-posta : cadde
departman: cadde
telefon: cadde

bilgi = {
'isim' : 'XYZ' ,
'e-posta' : 'xyz@öğrenci.com' ,
'departman' : 'Andrew' ,
'telefon' : '0003-4567234'
}
öğrenci = Öğrenci ( **bilgi )
Yazdır ( 'Öğrenci ayrıntıları:' , öğrenci )

Çıktıyı gözlemledikten sonra bu basit örnekte Pydantic veri sınıflarının verileri sorunsuz bir şekilde işlemesini sağladığını özetleyebiliriz. Girdinin istediğimizle eşleştiğinden emin olurlar. Bu, daha az hata ve daha mutlu kullanıcılar anlamına gelir.

Çözüm

Pydantic veri sınıfları verilerle nasıl baş ettiğimizi entegre eder. Bilginin hem doğru olduğunu hem de gerekli yapıya uyduğunu garanti ederler. Bu, daha az hata ve daha kusursuz uygulamalar anlamına gelir. Pydantic ile geliştiriciler, veri sorunlarıyla ilgili endişelerden rahatsız olmadan, iyi işleyen uygulamalar oluşturmaya çaba gösterebilirler. Bunu, yalnızca verileri yönetmek için özel bir görev yöneticisine sahip olmak ve her şeyin baştan sona sorunsuz bir şekilde ilerlemesini sağlamak olarak düşünün.