Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Kata Kunci 'dengan' Python Memudahkan Pengurusan Sumber Tidak Terurus?

Bagaimanakah Kata Kunci 'dengan' Python Memudahkan Pengurusan Sumber Tidak Terurus?

Susan Sarandon
Susan Sarandonasal
2024-12-07 08:12:13238semak imbas

How Does Python's

Kata Kunci Python "Dengan": Pengurusan Sumber Tidak Terurus

Dalam Python, kata kunci "dengan" memainkan peranan penting dalam mengendalikan sumber yang tidak terurus, seperti aliran fail. Ia menyerupai pernyataan "menggunakan" dalam VB.NET dan C#, memudahkan pembersihan sumber apabila blok kod yang dikaitkan dengannya berakhir, walaupun dengan adanya pengecualian.

Pada asasnya, "dengan" menyediakan sintaks yang dipermudahkan untuk blok "cuba/akhirnya". Menurut dokumentasi Python:

The with statement clarifies code that previously would use try...finally blocks to ensure that clean-up code is executed.

Cara Menggunakan "Dengan"

Sintaks pernyataan "dengan" ialah:

with expression [as variable]:
    with-block

Ungkapan dinilai dan harus menghasilkan objek yang menyokong protokol pengurusan konteks (dengan __enter__() dan __exit__() kaedah).

Contoh

Pertimbangkan coretan kod Python berikut:

with open('/tmp/workfile', 'r') as f:
    read_data = f.read()
print(f.closed)

Dalam kod ini, pernyataan "dengan" membuka fail "/tmp/workfile" dalam mod baca dan mengikatnya pada pembolehubah "f." "dengan-blok" mengandungi operasi pada fail "f," seperti membaca kandungannya ke dalam "read_data."

Setelah keluar dari "dengan-blok," objek fail ditutup secara automatik, walaupun jika pengecualian berlaku dalam blok. Kaedah __exit__() bagi objek fail menjaga pembersihan dengan memastikan fail ditutup dan sebarang sumber lain yang diperlukan dikeluarkan.

Faedah "Dengan"

  • Jaminan pembersihan sumber: "Dengan" memastikan sumber dibersihkan walaupun terdapat pengecualian, menghalang sumber yang tidak dikendalikan daripada dibiarkan terbuka.
  • Sintaks dipermudah: "Dengan" menyelaraskan kod dengan menghapuskan keperluan untuk blok "cuba/akhirnya" yang jelas, menjadikan pengurusan sumber lebih ringkas dan boleh dibaca.

Atas ialah kandungan terperinci Bagaimanakah Kata Kunci 'dengan' Python Memudahkan Pengurusan Sumber Tidak Terurus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn