Co to jest plik Xslx?
Podczas tworzenia arkuszy kalkulacyjnych w najnowszych wersjach programu Excel firma Microsoft używa pliku XLSX jako domyślnego typu pliku. Podobnie jak w przypadku pliku typu DOCX programu Word, możemy otwierać pliki XLSX przy użyciu różnych aplikacji / programów.
Co to jest plik CSV?
Format pliku CSV jest tym, czego możemy użyć do przechowywania wartości danych tabelarycznych w arkuszach kalkulacyjnych i bazach danych. Dane tabelaryczne, tekst lub tekst, są przechowywane jako zwykły tekst w pliku CSV. Rekord w pliku CSV to wartość danych przechowywana w każdym wierszu pliku. Każdy rekord może mieć więcej niż jedno pole oddzielone przecinkami.
Kluczowe różnice między plikami XLSX a CSV
Użytkownicy często używają CSV i XLSX zamiennie i na ogół nie są świadomi różnic między nimi, ich podstawowych cech i sposobu działania. Służy jedynie jako źródło informacji dla użytkownika. Prawie każda firma i korporacja używa obu, aby pomóc użytkownikom w zarządzaniu, aktualizowaniu i przechowywaniu danych dla użytkownika. Oto kilka kluczowych różnic między plikami XLSX i CSV, o których powinieneś wiedzieć:
- Format CSV zapisuje dane tabelaryczne w pliku tekstowym separatora z rozszerzeniem .csv. Podczas gdy plik Excel lub XLSX to arkusz kalkulacyjny, który przechowuje pliki w swoim zastrzeżonym formacie, a mianowicie. xls lub XLSX.
- Pliki programu Excel to pliki binarne zawierające dane z każdego arkusza w skoroszycie. Natomiast CSV to zwykły i prosty format tekstowy z sekwencją wartości danych oddzielonych przecinkami.
- Na plikach CSV nie można wykonywać operacji na danych. Można je jednak przeprowadzić na plikach Excel.
- Pliki CSV są szybsze i zużywają mniej pamięci niż pliki XLSX. Jednak program Excel zużywa więcej pamięci podczas importowania danych.
- Jeśli porównamy CSV z Excelem, możemy otworzyć pliki CSV w dowolnym edytorze tekstu Windows, podczas gdy pliki Excela nie.
Jak można przekonwertować plik XLSX na CSV za pomocą Pythona?
Plik XLSX można przekształcić w plik CSV w Pythonie przy użyciu różnych metod. Python zawiera wiele modułów i funkcji, które mogą nam pomóc w wykonaniu tego zadania. Tutaj omówimy kilka metod, których można użyć do konwersji plików XLSX na pliki CSV w Pythonie.
Wymagania wstępne do przeprowadzenia konwersji programu Excel na CSV
Instalacja wymagań to pierwszy krok. W tym samouczku używamy modułów takich jak Combine Pandas, CSV i Openpyxl itp. Pakiet Pandas w Pythonie pozwala na manipulację i analizę danych. Pandas to dobrze znana biblioteka wśród programistów Pythona. Pliki programu Excel można odczytywać i zapisywać przy użyciu pakietu Pythona znanego jako Openpyxl. Nie będziemy zajmować się bezpośrednio tą biblioteką. Pandy zamiast tego używają Openpyxl wewnętrznie.
Korzystając z repozytorium PyPI możemy zainstalować oba pakiety:
Metoda 1: Konwersja XLSX do CSV przy użyciu modułu Pandas
Przykład 1: Konwertowanie jednego pliku XLSX na CSV
Pandas to moduł typu open source stworzony dla języka programowania Python w celu manipulowania i analizowania danych. Aby pracować z szeregami czasowymi i tabelami numerycznymi, Pandas zapewnia różnorodne funkcje i funkcje. Za pomocą pand można odczytywać, filtrować i porządkować zarówno małe, jak i duże zbiory danych. Wyniki można generować w różnych formatach, takich jak Excel, JSON i CSV. Używamy metody read_excel() Pandy do odczytu pliku Excela oraz metody to_csv() do przekształcenia DataFrame w plik CSV.
Drukujemy nasz plik .csv jako DataFrame, jak widać na wyjściu. Poprzedni skrypt konwertuje nasz plik XLSX do CSV i tworzy plik „salary.csv” w bieżącym katalogu.
Przykład 2: Konwersja pliku XLSX (z wieloma arkuszami) do CSV
W poniższym przykładzie najpierw odczytujemy nazwy arkuszy pliku Excel. Nazwy poszczególnych arkuszy są następnie zapętlane i zapisywane jako osobne pliki CSV. Skrypt zapisuje pliki CSV w tej samej lokalizacji.
Używamy przykładowego pliku XLSX zawierającego dwa lub więcej arkuszy roboczych lub arkuszy kalkulacyjnych.
Jak widać, nasz plik XLSX składa się z dwóch arkuszy (arkusz1 i arkusz2). Teraz piszemy kod, aby przekonwertować ten plik XLSX na CSV.
Wyjście:
Skrypt pomyślnie przekonwertował plik XLSX z dwoma arkuszami na pojedynczy plik CSV z jednym arkuszem.
Przykład 3: Konwertowanie wielu plików XLSX na osobne pliki CSV
Rozważ scenariusz, w którym musisz przekonwertować kilka plików programu Excel w swoim katalogu roboczym na plik CSV. Możesz zastosować tę metodę. Zaczynamy od założenia, że każdy plik zawiera tylko jeden arkusz. Następnie rozszerzamy naszą metodę o obsługę wielu plików i kilku arkuszy. Poniższy kod Pythona wykorzystuje standardowy moduł glob. Dopasowujemy ścieżki plików za pomocą wzorców z Glob. Dopasowuje wszystkie pliki z rozszerzeniem .xlsx w katalogu roboczym. Następnie opracowujemy funkcję, która odczytuje pliki Excela i zapisuje je jako pliki CSV. Wywołujemy tę funkcję na każdej znalezionej ścieżce pliku.
Ten poprzedni skrypt konwertuje wszystkie pliki xlsx w bieżącym katalogu na pliki CSV.
Teraz konwertujemy pliki XLSX z wieloma arkuszami kalkulacyjnymi na CSV. To jest najprawdopodobniej najtrudniejsza część. W naszym katalogu roboczym znajdują się trzy pliki programu Excel. Ponadto niektóre z nich składają się z więcej niż jednego arkusza. Naszym celem jest:
- Utwórz katalog dla każdego pliku arkusza kalkulacyjnego,
- Przekonwertuj arkusze plików Excela na CSV i powinny one być przechowywane w nowo utworzonym katalogu.
Skrypt konwertuje XLSX z jednym i wieloma arkuszami na osobne pliki CSV i przechowuje je w nowych katalogach o tej samej nazwie.
Aby pobrać każdy plik Excel znajdujący się w bieżącym katalogu, używana jest funkcja glob. Następnie foldery są tworzone dla każdego pliku XLSX za pomocą funkcji os.mkdir. Plik CSV jest następnie tworzony dla każdego arkusza w nowym katalogu poprzez zapętlenie nazwy arkusza.
Metoda 2: Konwersja XLSX do CSV przy użyciu modułów Openpyxl i CSV
W tej metodzie użyjemy modułów openpyxl i CSV do konwersji plików XLSX na CSV. Aby odczytywać i zapisywać pliki 2010 xlsx, xlsm, xltx i xltm, można użyć modułu Pythona openpyxl. Moduł CSV zawiera klasy umożliwiające odczyt i zapis danych tabelarycznych w formacie CSV.
Aby odczytać lub załadować nasz plik xlsx, używamy funkcji load_workbook() modułu openpyxl. Możesz użyć tej funkcji, jeśli chcesz napisać lub odczytać istniejący plik XLSX/Excel w Pythonie. Po aktywacji excela używamy funkcji csv.writer() do stworzenia naszego pliku CSV. Następnie pętla for służy do przechowywania danych w komórkach danych pliku CSV. Konwertujemy nasz plik example.xlsx na myfile.csv, jak widać na poniższym obrazku:
Wniosek
W tym samouczku przedstawiliśmy krótkie wprowadzenie do plików XLSX i plików CSV. Wyjaśniliśmy kluczowe różnice między obydwoma formatami plików. Omówiliśmy dwie metody z wieloma przykładami, aby nauczyć, w jaki sposób pliki XLSX z jednym lub wieloma arkuszami można przekonwertować na pliki CSV. Zaimplementowaliśmy przykład konwersji wielu plików XLSX na pliki CSV jednocześnie. Konwersja danych z Excela do CSV może być prosta lub trudna. Jeśli masz tylko jeden plik z niewielką liczbą arkuszy, jest to proste. Ale jeśli nie, to może być trudne.