Python csv

Python işlevleri ve meth

Python CSV modülü, CSV dosyalarını işlemek için kullanılır. CSV dosyaları birçok bilgiyi tutabilir ve CSV modülü, Python'un reader() ve yazar() işlevleri. 

Veri okuma, yazma ve işleme, programlamanın önemli bir parçasıdır. Bu nedenle, harici kaynaklardan veri okuyabilmeniz ve yazabilmeniz için Python'da dosyaların nasıl ele alınacağını bilmek faydalı olabilir. 

Örneğin, müşteri eğilimleri hakkında daha fazla bilgi edinmek isteyen yerel bir dondurma dükkanının sahibi olduğunuzu varsayalım. Hangi dondurma lezzetlerinin popüler olduğunu, insanların bu tatlar için ne kadar harcama yaptığını ve daha fazlasını öğrenmek için kullanıcı siparişlerinde topladığınız verileri analiz etmek için Python'u kullanabilirsiniz.

Python CSV'nin bulunduğu yer burasıdır. modülü gelir. CSV dosyaları büyük miktarda veri depolamak için kullanılır ve CSV modülü bu dosyaları Python'da ayrıştırmanıza olanak tanır. Bu öğreticide, CSV Python modülünü kullanarak CSV dosyalarını nasıl okuyup yazacağımızı keşfedeceğiz.




CSV Yenileyici

Verilerle çalışırken, bu verilerin virgülle ayrılmış bir listesi. Örneğin, değerleri virgülle ayrılmış bir dondurma siparişleri listeniz olabilir. Bu veri yapısına CSV verileri veya Virgülle Ayrılmış Değerler denir.

Geleneksel metin dosyaları, verileri depolamanız gerektiğinde yararlı olabilir, ancak yapılandırılmış verileri depolamak için kullanılamazlar. Öte yandan CSV dosyaları, elektronik tabloların ve veritabanlarının yapılandırılmış verileri depolamanıza izin vermesine benzer şekilde, kodunuzda başvurabileceğiniz bir tablo biçiminde yapılandırılmış verileri depolamanıza olanak tanır. Örneğin, dondurma aromalarını veya tedarikçi bilgilerini depolayan bir CSV dosyanız olabilir.

İşte bir CSV dosyası örneği:

suppliers.csv Hendersons Creamery, 123 Main Street, Cream Peterson Chocolate, 129 Second Street, Chocolate Sprinkles

Bu dosya üç öğeyi depolar: bir tedarikçinin adı, adresi ve işletmemize tedarik ettikleri ürün. Dosyamız ayrıca, biri Hendersons Creamery ve diğeri Peterson Chocolate için olmak üzere iki satırlık veri depolar.

Katılımcıların %81'i, bir eğitim kampına katıldıktan sonra teknik iş beklentileri konusunda daha emin hissettiklerini belirtti. Bugün bir eğitim kampı ile eşleştirin.

Ortalama bir eğitim kampı mezunu, bir eğitim kampına başlamaktan ilk işini bulmaya kadar, kariyer geçişinde altı aydan az zaman harcadı.

Çünkü verilerimiz şu şekilde yapılandırılmıştır: bir CSV dosyası, onu bir Python programı aracılığıyla ayrıştırabilir ve tek tek sütunlardan veya satırlardan veri alabiliriz.




Python CSV Modülü

Python CSV modülü, CSV verilerini ayrıştırmak için kullanılabilir. Python. Dolayısıyla, örneğin tedarikçi bilgilerinin bulunduğu bir CSV dosyanız varsa, bu verileri almak ve bunlarla çalışmak için CSV modülünü kullanabilirsiniz.


CSV yerleşik bir Python modülüdür, ancak onu kullanmaya başlamadan önce programımıza CSV almamız gerekiyor.Bunu şu kodu kullanarak yapabiliriz:

csv'yi içe aktar

CSV Dosyalarını Okuma

Bir CSV dosyasındaki verilerle çalışmadan önce dosyayı okumanız gerekir.CSV modülü, programımıza bir CSV dosyasını okumak için kullanılabilecek reader() adlı bir yöntemle gelir. Okuyucu işlevi, belirtilen bir dosyanın her satırını alır ve onu bir sütun listesine dönüştürür.

Diyelim ki, suppliers.csv dosyasını programımıza okumak istiyoruz.Dosyanın içeriği aşağıdaki gibidir:

Hendersons krema , 123 Main Street, Cream Peterson Chocolate, 129 Second Street, Chocolate Sprinkles HW Smith and Co, 17 Boston Avenue, Ice Cream Cones

Bu verileri aşağıdaki kodu kullanarak alabiliriz:

csv'yi open("suppliers.csv", "r") ile f: content = csv.reader( olarak içe aktarın f) içerikteki c için: print(c)

Burada çok şey oluyor, o yüzden onu parçalayalım. İlk satırda, kodumuzda CSV yöntemlerini kullanmamıza izin veren csv modülünü içe aktarıyoruz. Bir sonraki satırda dosyamızı açmak için with ifadesini kullanıyoruz ve dosyamıza f değerinin atanması gerektiğini belirtiyoruz. 

Sonra, dosyamızın içeriğini okumak için contents = csv.reader(f) kullanırız, csv.reader()'u kullanırız. işlev. Son olarak, programımız CSV dosyasındaki her satırda dolaşan ve bunu Python kabuğuna yazdıran bir for döngüsü oluşturur.

Programımız şunu döndürür:

['Hendersons Creamery', ' 123 Main Street', ' Cream'] ['Peterson Chocolate', '129 Second Street', ' Chocolate Sprinkles'] ['HW Smith and Co', '17 Boston Avenue', 'Ice Cream Cones']

Gördüğünüz gibi programımız dosyamızın içeriğini okudu ve her satırı bir dizi. Artık bu verilere sahip olduğumuza göre, programımızda manipüle edebiliriz.

Dükkan kapalı olacağı için önümüzdeki hafta siparişlerimizi iptal etmek için bir bildirim gönderdiğimizi varsayalım. Bu kodu, her tedarikçinin adreslerini almak için kullanabiliriz, böylece onlara bildirimi gönderebiliriz:

… içindeki c için: print(c[1])

Programımız şunu döndürür:

123 Ana Cadde 129 İkinci Cadde 17 Boston Bulvarı

Kodumuzda, içindeki her satırdan geçen bir for döngüsü oluşturuyoruz. >içerik değişkeni. Ardından, her bir öğenin değerini 1 dizin numarasıyla yazdırırız ve bu durumda her tedarikçinin adresini içerir.


Şimdi, dosyamızdaki verileri bir diziye okumak istediğimizi söyleyelim.Bu, verilerimizi başka bir dosyada saklamamıza izin verdiği için yaygın bir işlevdir. daha sonra kullanmak üzere değişken. İşte bu eylemi gerçekleştirmek için kullanabileceğimiz kod:

csv tedarikçileri içe aktar = [] open("suppliers.csv", "r") ile f olarak: content = c için csv.reader(f) in content: provider.append(c) print(suppliers)
< p>Kodumuz şunu döndürür:

[['Hendersons Creamery', ' 123 Main Street', ' Cream'], ['Peterson Chocolate', '129 Second Street',' Chocolate Sprinkles'], ['HW Smith and Co', '17 Boston Avenue',' Ice Cream Cones']]

O'da neler olduğunu açıklayalım senin kodun. Programımız suppliers.csv dosyasını açar, dosyayı okur ve ardından her kaydı programımızın başlangıcında bildirdiğimiz suppliers dizisine ekler. Ardından programımız suppliers değişkenini yazdırır. 

CSV Dosyalarına Yazma

CSV modülü, bir CSV dosyasına veri yazmak için kullanılabilecek bir yöntem içerir: writer()writer() işlevi, verilerimizi daha sonra kullanmak üzere kaydedebilmemiz için belirttiğimiz dosyaya veri yazmamızı sağlar.

writer() işlevi, bir dosyaya yazmak için kullanabileceğimiz bir nesne oluşturur. Daha sonra dosyamıza veri yazmak için writerow() yöntemini kullanıyoruz.

"Python.Engineering hayatıma en ihtiyacım olduğu anda girdi ve hızlı bir şekilde eşleşmeme yardımcı oldu. bir eğitim kampı. Mezun olduktan iki ay sonra, hayattaki değerlerim ve hedeflerim ile uyumlu hayalimdeki işi buldum!"

Venus, Rockbot'ta Yazılım Mühendisi

p>

Diyelim ki her tedarikçi kaydına yeni bir değer katan bir program yazdık. Bu değer, tedarikçinin belirli bir ürün için birincil tedarikçi olup olmadığını tutar. İşte elimizdeki verileri bir dosyaya yazmak için kullanabileceğimiz kod:

csv tedarikçileri içe aktar = [] open("suppliers.csv", "r") ile f olarak: içerikler = c için csv.reader(f) ile içerik: c.append("Evet") tedarikçiler.append(c) ile open("new_suppliers" .csv", "w") olarak f: write_to_file = tedarikçilerde s için csv.writer(f): write_to_file.writerow(s)

Kodumuzun başlangıcı şuna çok benzer önceki örneklerimiz; suppliers.csv dosyasını okur ve içeriğini suppliers dizisine taşır. Tek fark, read işlevinin, tedarikçiler dizimizdeki her öğeye Yes adlı yeni bir değer eklemesidir. Bu değer, tedarikçinin belirli bir ürünün birincil tedarikçisi olup olmadığını belirtir.

Ardından, new_suppliers.csv adında yeni bir dosya açarız ve <'in içeriğini yazarız. code>tedarikçiler bu dosyaya. Dosyamızı yazmaya hazırlamak için writer() işlevini kullanırız.

Ardından, tedarikçilerimizden geçen bir for döngüsü oluştururuz. dizisini oluşturur ve her tedarikçiyi new_suppliers.csv dosyasına eklemek için writerow() yöntemini kullanır.

Kodumuz aşağıdakileri döndürür:

new_suppliers.csv Hendersons Creamery, 123 Main Street, Cream,Yes Peterson Chocolate, 129 Second Street, Sprinkles ,Yes HW Smith and Co, 17 Boston Avenue, Ice Cream Cones,Evet

Ancak, tedarikçilerimizin tamamını yazmak istiyorsak, her bir öğe arasında dolaşmak gerekli değildir. değişkeni bir dosyaya. Bunun yerine, suppliers değişkenindeki her öğeyi new_suppliers.csv dosyamıza yazmak için writerows() yöntemini kullanabiliriz.


Kullanacağımız kod şudur:

&hellip ; write_to_file = csv.writer(f) write_to_file.writerows(suppliers) …

Kodumuz şunu döndürür:

new_suppliers.csv Hendersons Creamery, 123 Main Street, Cream,Yes Peterson Chocolate, 129 Second Street, Sprinkles,Yes HW Smith and Co, 17 Boston Avenue, Ice Cream Cones,Evet

CSV Dosyasından Alıntılama

Yukarıdaki örnekte, kodumuz suppliers dizisini göründüğü gibi yeni bir dosyaya yazdı. 

Ancak, her bir değerin bir dosyaya tırnak içinde yazılmasını istediğiniz durumlar olabilir.Örneğin, birkaç tedarikçi adının virgül içerdiği bir tedarikçi listeniz olabilir, bu da CSV f ile sonuçlanır. ile hatalı biçimleniyor.

CSV modülü, dosyanıza yazılacak değerleri tırnak içine almak için kullanılabilecek dört alıntı işlevi içerir, böylece bu olmaz. Bu işlevler, csv.writer() yöntemine bir argüman olarak iletilir ve aşağıdaki gibidir:

  • csv.QUOTE_ALL: Surround tırnak içindeki her dize
  • csv.QUOTE_NONNUMERIC: Tüm dize alanlarını alıntılayın
  • csv.QUOTE_MINIMAL: Özel karakterli alanları alıntılayın
  • csv.QUOTE_NONE: Hiçbir değeri alıntılamayın

Öyleyse, suppliers dizisi dosyamıza yazıldığında. Aşağıdaki kodu kullanabiliriz:

… write_to_file = csv.writer(f, quoting=csv.QUOTE_ALL) …

Şimdi programımızı çalıştırdığımızda new_suppliers.csv dosyamız aşağıdakileri içeriyor :

"Hendersons Creamery"," 123 Main Street"," Cream","Evet" "Peterson Chocolate "," 129 İkinci Cadde"," Çikolata Sprinkles","Evet" "HW Smith and Co"," 17 Boston Bulvarı"," Dondurma Külahları","Evet"

Sonuç

Dosyalardan veri okumak ve dosyalara veri yazmak, Python programınızdan oluşturulan verileri almanızı ve saklamanızı sağlar. Örneğin, bir Python programında çalışmak istediğiniz dondurma lezzetleri ve fiyatları menünüz varsa, verileri bir dosyada depolamak isteyebilirsiniz.

Bu öğreticide, temel bilgileri inceledik. Python CSV modülünün özellikleri ve nasıl çalıştığı. Ayrıca, reader() ve writer() nesnelerini kullanarak dosyaların nasıl okunacağını ve yazılacağını tartıştık.

Artık verileri okumaya hazırsınız. ve bir profesyonel gibi Python kullanarak CSV dosyalarına veri yazın!

Dünyanın her yerindeki şirketler Python'da kod yazmayı bilen kişileri işe alıyor. ücretsiz Python.Engineering uygulamasını indirin bugün Python öğrenmenin teknoloji alanında kariyer yapmanıza nasıl yardımcı olabileceği hakkında daha fazla bilgi edinmek için!





Python csv: StackOverflow Questions