Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Anda Boleh Membuka Berbilang Fail Secara serentak Menggunakan Pernyataan \'dengan terbuka\' Python?

Bagaimanakah Anda Boleh Membuka Berbilang Fail Secara serentak Menggunakan Pernyataan \'dengan terbuka\' Python?

Linda Hamilton
Lepaskan: 2024-11-16 03:06:03
asal
402 orang telah melayarinya

How Can You Open Multiple Files Simultaneously Using Python's

Membuka Berbilang Fail dengan Pernyataan "dengan terbuka" dalam Python

Pernyataan "dengan terbuka" Python ialah cara yang mudah untuk membuka dan bekerja dengan fail dalam pengurus konteks . Walau bagaimanapun, secara lalai, ia hanya membenarkan membuka satu fail pada satu masa. Tetapi bagaimana jika anda ingin mengubah suai atau membaca daripada berbilang fail secara serentak?

Menggabungkan "dengan Panggilan terbuka"

Jawapan Ringkas: Sejak Python 2.7 atau 3.1, anda boleh senaraikan berbilang pernyataan "dengan terbuka" tanpa kata kunci "dan":

with open('a', 'w') as a, open('b', 'w') as b:
    # Perform actions on file handles 'a' and 'b'
Salin selepas log masuk

Bersarang Penyataan "dengan terbuka"

Dalam versi Python terdahulu, anda boleh menggunakan "contextlib.nested() " kaedah untuk menempatkan pengurus konteks. Walau bagaimanapun, pendekatan ini tidak disyorkan untuk membuka berbilang fail.

Contextlib.ExitStack

Untuk situasi di mana anda perlu membuka bilangan fail yang berubah-ubah sekaligus, Python 3.3 memperkenalkan "contextlib.ExitStack "pengurus konteks. Ini membolehkan anda menambah berbilang objek fail pada tindanan dan keluar dalam susunan yang betul:

import contextlib
with contextlib.ExitStack() as stack:
    files = [stack.enter_context(open(fname)) for fname in filenames]
    # Work with 'files' here
Salin selepas log masuk

Pemprosesan Fail Berurutan

Perlu diingat bahawa, dalam kebanyakan kes, ia lebih cekap dan idiomatik untuk memproses fail secara berurutan. Sebagai contoh, anda boleh menggunakan gelung untuk membuka dan bekerja dengan setiap fail secara individu:

for fname in filenames:
    with open(fname) as f:
        # Process file 'f' here
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Membuka Berbilang Fail Secara serentak Menggunakan Pernyataan \'dengan terbuka\' Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan