Moduł Python IO

Moduł Python IO
Możemy obsłużyć procesy wejściowe i wyjściowe związane z plikiem za pomocą modułu Python IO. Standardowa biblioteka Python jest wyposażona w ten moduł. Korzystanie z modułu IO ma korzyść z umożliwienia nam zwiększenia możliwości umożliwienia pisania danych Unicode z powodu dostępnych klas i metod.

W Python możemy wykorzystać moduł IO do realizacji operacji strumieniowych i buforowych na różne sposoby. W tym artykule wyjaśnimy dwie pomocne wspólne klasy modułu IO, które są „bajtesio” i „stringio”. Można do nich uzyskać za pomocą „IO.Bajtesio ”i„ IO.Stringio ”.

Przykład 1: Wykorzystanie klasy Python Bytesio

Kiedy jesteśmy zobowiązani do przechowywania danych w postaci bajtów w buforze w pamięci, moduł Python IO zapewnia nam klasę „bajtesio”, która pozwala nam używać „IO.BajteSio () ”metoda obsługi danych jako bajtów.

Stworzyliśmy następujący przykładowy program, aby zademonstrować manipulację bajtami w buforze:

„IO.Metoda bajtesio () ”należy do modułu Pythona„ IO ”. Aby ćwiczyć tę metodę w naszym programie, musimy wprowadzić bibliotekę, która. Ten moduł pozwala nam korzystać z głównych operacji wejściowych/wyjściowych w Python. Kod inicjuje poprzez importowanie wymaganej biblioteki Python, która jest „IO” poprzez skryptowanie linii kodu jako „Importuj IO”.

Po zaimportowaniu modułu przywołujemy „IO.Metoda bajtesio () ”z biblioteki„ IO ”. W nawiasach tej metody używamy przedrostka „B”, który odnosi się do przekazywania bajtów. Ten prefiks „B” oznacza, że ​​wszystko, co jest napisane, jest przechowywane jako strumień bajtów w buforze. Podajemy więc ciąg bajtowy jako „To jest strumień bajtów. \ ndo rozumiesz?„Obiekt pliku„ Bstream ”jest tworzony do obsługi tego strumienia bajtów i przypisania strumienia bajtów, który jest generowany z„ IO.Metoda bajtesio () ”. Teraz, aby wydrukować zawartość zawartą w buforze w oknie wyjściowym, mamy metodę z zestawu „IO” jako „FileObject.getValue () ”. Metoda „print ()” jest wywoływana. Ta metoda wyświetla dostarczone dane wejściowe.

Jako wejście tej metody „getValue ()” jest przekazywany z obiektem pliku jako „Bstream.getValue () ”. Ta metoda pobiera zawartość przechowywaną w buforze, a funkcja „print ()” ostatecznie umieszcza powstały strumień bajtów na wyświetlaczu. Wreszcie, aby zamknąć bufor, „FileObject.Wykorzystana jest metoda close () ”. Nazwa obiektu pliku „Bstream” z metodą „Close ()” jest wspomniana. To zamyka bufor dla wszelkich kolejnych operacji i uwalnia przechwycone przechowywanie bufora.

Wygenerowany wynik pokazuje nam strumień bajtów wystawiony na terminalu, który jest pobierany z bufora.

Przykład 2: Korzystanie z klasy Python Stringio

Drugi główny moduł Python IO to „Stringio”. Jest to podobne do „bajtesio” z wyjątkiem, że wykonuje operacje wejściowe/wyjściowe na danych ciągów zamiast danych bajtów. Czasami konieczne jest odczyt lub generowanie danych w pamięci zamiast w rzeczywistych plikach, do których system operacyjny może uzyskać dostęp. Klasa Python Stringio jest w tym przypadku przydatna.

Możemy skorzystać z różnych operacji związanych z plikami na tym module. Pierwszą praktyką jest utworzenie obiektu pliku, a następnie wykonanie operacji pliku na nim. Obiekt pliku jest tworzony przez implementację fragmentu kodu podanego w następujący sposób:

Najpierw zrozummy ten blok kodu.

Tutaj importujemy moduł „IO” do programu, abyśmy mogli uzyskać dostęp do dowolnej z zawartych metod. W następnym wierszu programu deklarujemy zmienną ciągów „Newstring”, która jest inicjowana przez ciąg: „Uczymy się używania modułu Stringio w Python.„Teraz tworzymy obiekt„ Stringio ”, przekazując go wcześniej utworzony ciąg. Ponieważ ten moduł należy do zestawu narzędzi „IO”, musimy o tym wspomnieć przed obiektem Stringio jako „IO.Stringio () ”.W swoich nawiasach utworzony przez nas ciąg, który utworzyliśmy. Jeśli nie przekazamy łańcucha do tego „stringio”, zacznie się pusty. Obiekt pliku „File_OBJ” jest tworzony, aby przechowywać dane ciągu z „stringio” i można go traktować jako plik. Operacje związane z plikiem można teraz zastosować do tego obiektu pliku.

Pierwszą operacją pliku, którą tutaj zrobimy, jest odczytanie treści, która jest początkowo obecna w wygenerowanym pliku obiektowym. Poprzednia sekcja kodu jest zapisywana w celu osiągnięcia tego.

Aby zinterpretować dane, które przenosi plik, musimy je odczytać. „FileObject.Metoda read () ”umożliwia odczytanie treści pliku. Ponieważ możemy traktować obiekt Stringio w taki sam sposób jak plik, możemy zastosować na nim metodę „odczyt ()”. W ten sposób wywołujemy „FileObject.Metoda read () ”. Nazwa obiektu pliku to „file_obj”, którą określamy za pomocą metody „read ()”. Pobrane dane powinny być przechowywane w zmiennej „x”. Wreszcie, aby zobaczyć zawartość odczytu pliku na terminalu, zmienna „x” jest przekazywana do funkcji „print ()”. Metoda „print ()” umieszcza wyjście na widoku, która jest przechowywana w dostarczonej zmiennej wejściowej.

Treść pliku jest wystawiana na ekranie, jak wyświetlono w poprzedniej migawce, którą początkowo wstawiliśmy podczas tworzenia pliku obiektowego.

W ten sam sposób możemy napisać nowy ciąg do tego obiektu pliku. Aby napisać w pliku, musimy użyć pliku metody „zapis ()” i zapisać żądany ciąg z istniejącą zawartością pliku. Poniższy kod pomaga zrozumieć jego wykonanie:

W tym bloku kodu Python „FileObject.Metoda zapisu () ”jest wykorzystywana do zapisu ciągu w pliku. Nazwa obiektu pliku „File_OBJ” jest dostarczana z metodą „zapis ()”, a pożądany ciąg jest wkładany do jej klamrów funkcyjnych. Dodany ciąg brzmi: „To nowe dane ciągów.„Zaktualizowana treść pliku może być wyświetlana tylko po odczytaniu pliku. Ale przed przeczytaniem całej zawartości obiektu pliku kursor musi zostać przeniesiony do 0th Pozycja indeksu, aby mogła odczytać poprzednie dane również z nowym pisemnym ciągiem.

Aby zmienić pozycję kursora, metoda „shee ()” jest wywoływana z „0” jako wartością argumentu. Ten „0” oznacza, że ​​kursor zaczyna odczytać z punktu początkowego. Obecnie sprawdzamy zawartość pliku za pomocą pliku Python, metodę „Read ()”. Nazwa obiektu pliku jako „file_obj” jest dostarczana do metody „read ()” do zaktualizowanej zawartości, która jest przechowywana w tym obiekcie pliku. Aby przechowywać pobrane dane, generowana jest zmienna „y”. W końcu, aby umieścić tę treść na terminalu, funkcja „print ()” wchodzi tutaj w praktykę. Ta metoda ma dwa wejścia do przetworzenia - instrukcja jako „nowa treść to:”, a następnie zmienna „Y” do odczytania zawartości w oknie wyjściowym.

Wykonanie programu opracowało wynikowe dane na ekranie. Tutaj możemy zobaczyć, że nowy ciąg, który napisaliśmy, jest dołączany do istniejącej treści.

Wniosek

Moduł Python IO zapewnia nam możliwość wykonywania operacji wejściowych/wyjściowych na dostarczonych danych. W tym artykule omówiono dwie główne klasy modułu IO - bajtesio i stringio. W przypadku obu modułów klasy są opracowane z praktycznymi kodami Python, które są zaimplementowane w narzędziu Spyder. Pierwsza demonstracja wykonała klasę „bajtesio”, a następnie druga ilustracja opracowała różne metody, które można przeprowadzić za pomocą klasy „Stringio”.