Jak używać „with” w pythonie do otwierania plików (w tym przykłady)


Możesz użyć następującej składni, aby otworzyć plik w Pythonie, zrobić z nim coś, a następnie zamknąć plik:

 file = open (' my_data.csv ')

df = file. read ()

print (df)

file. close ()

Problem z tym podejściem polega na tym, że bardzo łatwo zapomnieć o zamknięciu pliku.

Lepszym podejściem jest użycie z open , które wykorzystuje następującą podstawową składnię:

 with open (' my_data.csv ') as file:

   df = file. read ()

   print (df)

Stosując to podejście, plik, z którym pracujesz, jest automatycznie zamykany, więc nie musisz pamiętać o użyciu file.close() .

Poniższe przykłady pokazują, jak używać z open w różnych scenariuszach.

Przykład 1: Użyj instrukcji With do odczytania pliku

Poniższy kod pokazuje, jak użyć instrukcji „with” do odczytania pliku w Pythonie i wydrukowania zawartości pliku:

 with open (' my_data.csv ') as file:

   df = file. read ()

   print (df)

,points, assists, rebounds
0.11.5.6
1,17,7,8
2,16,7,8
3,18,9,10
4,22,12,14
5,25,9,12
6,26,9,12
7,24,4,10
8,29,8,11

Zawartość pliku zostanie wydrukowana, a plik zostanie automatycznie zamknięty bez wpisywania przez nas file.close() .

Przykład 2: Użyj instrukcji With do zapisania pliku

Poniższy kod pokazuje, jak użyć instrukcji „with” do zapisania tekstu do pliku:

 with open (' data_out.csv ', ' w ') as file:

    file. write (' Some text to write to CSV file ')

Należy zauważyć, że „ w ” w instrukcji open() mówi Pythonowi, aby używał trybu „zapisu” z plikiem, a nie trybu odczytu.

Przykład 3: Użyj instrukcji With do odczytu i zapisu plików

Możemy także otworzyć wiele plików jednocześnie w jednej instrukcji „z”.

Poniższy kod pokazuje, jak użyć instrukcji „with” do otwarcia dwóch plików, odczytania zawartości jednego pliku, a następnie zapisania zawartości pierwszego pliku w drugim pliku:

 with open (' my_data.csv ', ' r ') as infile, open (' data_out.csv ', ' w ') as outfile:
    for line in infile:
        outfile. write (line)

Jeśli przejdziemy do lokalizacji, w której napisaliśmy „data_out.csv”, możemy wówczas wyświetlić zawartość pliku:

Zauważ, że możemy użyć funkcji open() do otwarcia dowolnej liczby plików w jednej instrukcji „with”.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe operacje w Pythonie:

Jak czytać pliki CSV za pomocą Pand
Jak czytać pliki Excel za pomocą Pand
Jak czytać pliki tekstowe za pomocą Pand

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *