piton

Python'da Json Dosyaları Nasıl Okunur ve Yazılır

Python'da Json Dosyaları Nasıl Okunur ve Yazılır
Bu makale, Python programlama dilinde JSON dosyalarının ve verilerinin nasıl işleneceğini açıklayacaktır. Python, JSON verilerinin işlenmesini kolay ve anlaşılır hale getiren yerleşik bir "json" modülüyle birlikte gelir.

JSON hakkında

JSON (JavaScript Object Notation), verileri depolamak ve değiş tokuş etmek için anahtar/değer çiftlerini kullanan bir dosya biçimi ve veri depolama standardıdır. Genellikle RESTful API'lerinde, hafif veritabanlarında, yapılandırma dosyalarında ve veri depolaması, alması ve değiş tokuş etmesi gereken diğer çevrimdışı veya çevrimiçi yazılımlarda görülen en yaygın kullanılan veri alışverişi biçimidir. Çoğu programlama dili, varsayılan olarak JSON verilerini ayrıştırmak ve yazmak için kitaplıklar içerir ve JSON, bir programlama dili agnostik veri biçimidir. Bir JSON dosyasında veya yükünde depolanan değerler genellikle diziler, sayılar ve listeler (diziler) gibi serileştirilebilir veri türleri içerir.

JSON ve Python Sözlükleri

Python'daki JSON verileri, “load” yöntemi kullanılarak bir sözlük nesnesine dönüştürülür. Her ikisini de tanımlayan sözdizimi neredeyse aynı olduğundan, bazı kişilerin json verilerini ve bir python sözlüğünü eşitlediği sıklıkla görülür. Bununla birlikte, json verileri katı bir sözdiziminde yapılandırılmış bir metin dizesinden başka bir şey değildir, bir python sözlüğü ise bellekte depolanan bir veri yapısı nesnesidir. Sözlük verilerini bir metin dosyasında saklamak veya python olmayan başka bir programa göndermek istiyorsanız, önce onu bir metin dizesine (bayt) dönüştürmeniz gerekir. Bu dökülen / dönüştürülen metin dizesi JSON'un standart sözdiziminde tanımlanır ve bir python sözlüğünü json uyumlu bir dizeye dönüştürme işlemine serileştirme denir.

Python'da JSON Verilerini Okuma ve Boşaltma

JSON verileri bir sunucudan yanıt olarak alınabilir, dosyadan okunabilir, URL sorgu parametrelerinden dilimlenebilir vb. Bu makale temel olarak yerel olarak depolanmış bir dosyadan json verilerini okumaya odaklanacaktır. Diyelim ki bir “test.json” dosyası aşağıdaki verileri içerir:

"kod adı": "Eoan Ermine", "sürüm": "Ubuntu 19.10"

Testi okumak için.json dosyasını python'da açmak için aşağıdaki kodu kullanabilirsiniz:

json'u içe aktar
açık ("test.json") f olarak:
veri = json.yük(f)
dökümü = json.dökümler(veri)
yazdır (veri)
yazdır (tür(veri))
yazdırmak (dökmek)
yazdır (tür(döküm))

Yukarıdaki koddaki ilk satır, json modülünü içe aktarır. Bir sonraki satırda, dosya içeriğini güvenli bir şekilde okumak için “open with open” kullanılır. "Açık" bloğu içinde, "json."load" yöntemi, "data" değişkenindeki dosya içeriğini okumak ve depolamak için kullanılır. Önceki adımda yüklenen veriler, “json” kullanılarak tekrar json dizesine dönüştürülür.boşaltma” yöntemi. Yukarıdaki kodu çalıştırmak aşağıdaki çıktıyı gösterecektir:

'kod adı': 'Eoan Ermin', 'sürüm': 'Ubuntu 19.10'

"kod adı": "Eoan Ermine", "sürüm": "Ubuntu 19.10"

Yukarıdaki çıktıda “json.load” yöntemi, ham json verilerini bir python sözlüğüne okurken “json.dumps” yöntemleri, sözlüğü JSON yapısıyla uyumlu bir dizgeye dönüştürür. Bir JSON nesnesi bir python sözlük nesnesine dönüştürüldüğünde, verileri işlemek için yerleşik python sözlük yöntemlerini kullanabilirsiniz. Yukarıdaki örnek oldukça basittir ve JSON verilerindeki dizileri veya iç içe değerleri içermez. Ancak python içinde, bu değerleri diğer iç içe sözlükler ve listeler gibi işleyebilirsiniz.

JSON Verilerini Sıralama ve Güzel Yazdırma

"json".dump” yöntemi, anahtarları sıralamak ve daha iyi okunabilirlik için çıktıyı oldukça iyi yazdırmak için bazı isteğe bağlı parametreleri destekler.

json'u içe aktar
açık ("test.json") f olarak:
veri = json.yük(f)
dökümü = json.dumps(veri, sort_keys=Doğru, girinti=4)
yazdırmak (dökmek)

Yukarıdaki kod aşağıdaki çıktıyı gösterecektir:


"kod adı": "Eoan Ermin",
"sürüm": "Ubuntu 19.10"

Veri Türü Dönüşümleri

Aşağıdaki liste, JSON değerlerinin python nesnelerine nasıl dönüştürüldüğünü ve bunun tersini gösterir.

JSON piton
dize cadde
numara int veya kayan nokta
doğru yanlış Doğru yanlış
boş Yok
dizi liste
nesne dikte

Json.araç Komut Satırı Modülü

Python güzel bir komut satırı yardımcı programı "json" içerir.JSON dizelerini ve dosyalarını doğrulamak ve güzel bir şekilde yazdırmak için kullanılabilecek "araç".

$ echo '"codename": "Eoan Ermine", "version": "Ubuntu 19.10"' | python3 -m json.araç

Yukarıdaki komutu çalıştırmak size aşağıdaki çıktıyı gösterecektir:


"kod adı": "Eoan Ermin",
"sürüm": "Ubuntu 19.10"

json'u da kullanabilirsiniz.JSON dosyaları ile araç. Aşağıdaki komutta "in_file" ve "out_file" öğelerini istediğiniz değerlerle değiştirin:

$ python3 -m json.araç in_file out_file

JSON verilerini güzel yazdırma, sıralama ve doğrulama dışında, json.alet başka bir şey yapmıyor. Bu nedenle, herhangi bir JSON verisini değiştirmek istiyorsanız, yerleşik JSON modülünü kullanarak kendi özel kodunuzu yazmanız gerekir.

Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...