CodeGym /Kurslar /Python SELF AZ /Məlumatların CSV və Excel formatlarında saxlanılması

Məlumatların CSV və Excel formatlarında saxlanılması

Python SELF AZ
Səviyyə , Dərs
Mövcuddur

1. Verilərin saxlanması üçün hazırlanması

Əvvəlki dərslərdə biz artıq BeautifulSoup kitabxanasını istifadə edərək veb səhifələrdən veriləri çıxarmağı öyrəndik. İndi isə skreyping uğurlarımızı analiz üçün daha faydalı və rahat bir şeyə çevirməyin vaxtı gəldi. Axı, verilər yalnız sizin scriptinizdə qalsa, onlardan çox az istifadə olur. Bu gün biz veriləri CSV və Excel formatında necə saxlamağı öyrənəcəyik, çünki məlumdur ki, proqramçının həyatında, pişik həyatında olduğu kimi, əsas məsələ yemək tapmaqdır... yəni, demək istəyirəm ki, saxlamaqdır.

Verilərimizi əyləncəli cədvəllərə çevirməyə başlamazdan əvvəl, gəlin qısa bir an dayanaq və verilərimizi ixrac üçün necə hazırlayacağımıza baxaq. Adətən, veb səhifələrdən çıxardığımız verilər siyahı və ya lüğət şəklində təqdim olunur. Onları elə formatlamaq yaxşı olar ki, cədvəl formatına ixrac etməyə hazır olsunlar.

Veri nümunəsi

Təsəvvür edin ki, siz kitablar haqqında belə məlumatlar toplamısınız:

Python

books = [
    {"title": "Harri Poter və Fəlsəfə Daşı", "author": "C. K. Roulinq", "price": "350.00"},
    {"title": "Üzük Hökmranı", "author": "C. R. R. Tolkin", "price": "500.00"},
    {"title": "Usta və Marqarita", "author": "M. A. Bulqakov", "price": "450.00"}
]

2. CSV formatında saxlanma

CSV (Comma-Separated Values) — sadə mətn formatıdır, hansında ki, cədvəl məlumatları saxlanılır. CSV-də hər sətr bir qeyd təşkil edir və hər sütun vergüllərlə ayrılır. Gəlin, məlumatlarımızı bu formatda necə saxlamaq lazım olduğunu öyrənək.

csv kitabxanasından istifadə

Python csv adlı bir modul təklif edir ki, bu da CSV faylları ilə işləməni əhəmiyyətli dərəcədə asanlaşdırır. Budur, kitablarımız haqqında məlumatları CSV-ə necə ixrac edə bilərik:

Python

import csv

with open('books.csv', mode='w', newline='', encoding='utf-8') as file:
    writer = csv.DictWriter(file, fieldnames=["title", "author", "price"])
    writer.writeheader()
    writer.writerows(books)

print("Məlumatlar uğurla books.csv faylına saxlanıldı")

Nəzərə alın: faylı w rejimində açarkən həmişə newline='' göstərin ki, Windows-da əlavə boş sətirlərdən qaçasınız.

CSV formatından məlumatların oxunması

Tam mənzərə üçün gəlin məlumatları CSV formatından necə geri oxumağı nəzərdən keçirək:

Python

with open('books.csv', mode='r', encoding='utf-8') as file:
    reader = csv.DictReader(file)
    for row in reader:
        print(row)

3. Excel formatında saxlanılma

Python ilə Excel üzərində işləmək üçün pandas kitabxanasından istifadə edəcəyik. Pandas məlumatlarımızı asanlıqla DataFrame-ə çevirmək və müxtəlif formatlarda, o cümlədən Excel-də, ixrac etmək imkanı verir.

pandas-ın quraşdırılması

Əgər hələ pandas quraşdırmamısınızsa, bunu pip vasitəsilə etmək mümkündür:

Bash

pip install pandas openpyxl

Excel-ə ixrac üçün pandas-dan istifadə

İndi kitab məlumatlarımızı Excel-də necə saxladığımıza baxaq:

Python

import pandas as pd

df = pd.DataFrame(books)
df.to_excel('books.xlsx', index=False, engine='openpyxl')

print("Məlumatlar books.xlsx faylında uğurla saxlanıldı")

Excel-dən məlumatların oxunması

Yalnız yaradılması deyil, həm də yaradılanların təkrar istifadəsi necə də sevindiricidir! Gəlin Excel-dən məlumatları oxumağı öyrənək:

Python

df = pd.read_excel('books.xlsx')
print(df)

4. Səhvlər və onların emalı

Proqramlaşdırmanın hər hansı digər aspektində olduğu kimi, məlumatları ixrac edərkən də səhvlərlə qarşılaşmaq mümkündür. Ən çox yayılan problemlər faylların düzgün yollarının olmaması və ya lazım olan kitabxanaların çatışmazlığı ilə bağlı olur. Məsələn, openpyxl kitabxanasını quraşdırmağı unutsaq, Excel-ə ixrac etmək mümkün olmayacaq.

Faylların mövcudluğunu yoxlamaq

Faylı yazmağa və ya oxumağa çalışmazdan əvvəl onun mövcud olub-olmamasını yoxlamaq faydalıdır. Bunun üçün os modulundan istifadə edə bilərsiniz:

Python

import os

if os.path.exists('books.csv'):
    print("Fayl books.csv mövcuddur")
else:
    print("Fayl books.csv tapılmadı")

İnanmayacaqsınız, amma yeni başlayanların ən yayılmış səhvlərindən biri köhnə məlumatları təsadüfən yeniləri ilə əvəz etməkdir. Fayl tarixçəsinin saxlanmasını avtomatlaşdırmaq bir sənətdir.

Həmçinin, ilk problem yaranan kimi skriptin dayanmasının qarşısını almaq üçün try-except konstruksiyalarından istifadə edərək səhv emalı daxil etməyi unutmayın.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION