


Carian dan Penggantian Di Tempat dalam Fail Teks
Mencari dan menggantikan kandungan dalam fail teks adalah tugas biasa, terutamanya apabila berurusan dengan set data yang besar. Dalam artikel ini, kami akan meneroka pendekatan terbaik untuk melaksanakan operasi ini dalam Python, memfokuskan pada mengekalkan fail asal di tempatnya.
Batasan Pemprosesan Dalam Memori
Walaupun tergoda untuk memuatkan keseluruhan fail ke dalam ingatan dan melakukan penggantian, ini boleh menjadi tidak cekap, terutamanya untuk fail besar. Selain itu, penulisan kembali ke fail berikutnya adalah menyusahkan.
Modul Fileinput
Modul input fail menyediakan penyelesaian yang mudah untuk pemprosesan di tempat. Dengan menggunakan modul ini, anda boleh mengakses fail asal dalam mod baca sahaja sambil mengubah hala output ke fail yang sama. Ini membolehkan anda mengubah suai baris dan menulisnya kembali dengan lancar.
Pelaksanaan Kod Menggunakan Fileinput
import fileinput file_path = "input.txt" with fileinput.input(file_path, inplace=True) as f: for line in f: if 'foo' in line: new_line = line.replace('foo', 'bar') print(new_line)
Dalam kod ini, kami membuka fail menggunakan fileinput.input( ), yang mengubah hala output ke fail yang sama. Gelung for berulang pada kandungan fail, mencari baris yang mengandungi 'foo'. Apabila menemui padanan, ia menggantikan 'foo' dengan 'bar' dan mencetak baris yang diubah suai.
Pendekatan Alternatif
Untuk fail yang lebih besar, kaedah input fail mungkin tidak sesuai kerana keperluan ingatannya. Dalam kes sedemikian, pertimbangkan alternatif berikut:
- Pendekatan Fail Sementara: Alihkan fail asal ke fail sementara, lakukan carian dan ganti, dan tulis semula ke fail asal . Pendekatan ini memerlukan storan tambahan tetapi lebih cekap untuk fail besar.
- Pemprosesan Baris demi Baris dengan Pembukaan Semula Fail: Baca dan ubah suai baris baris demi baris, tutup dan buka semula fail beberapa kali. Ini memastikan kecekapan memori tetapi kurang cekap untuk fail besar.
Kesimpulan
Memilih pendekatan yang sesuai bergantung pada saiz fail dan keperluan khusus bagi permohonan anda. Dengan menggunakan modul input fail atau kaedah alternatif, anda boleh mencari dan menggantikan kandungan dalam fail teks dengan cekap sambil mengekalkan fail asal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melakukan Carian Di Tempat dan Menggantikan dalam Fail Teks dengan Cekap dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

Memuatkan Fail Pickle di Python 3.6 Kesalahan Laporan Alam Sekitar: ModulenotFoundError: Nomodulenamed ...

Bagaimana untuk menyelesaikan masalah segmentasi kata Jieba dalam analisis komen tempat yang indah? Semasa kami mengadakan komen dan analisis tempat yang indah, kami sering menggunakan alat segmentasi perkataan jieba untuk memproses teks ...

Bagaimana cara menggunakan ungkapan biasa untuk memadankan tag tertutup pertama dan berhenti? Semasa berurusan dengan HTML atau bahasa markup lain, ungkapan biasa sering diperlukan untuk ...


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

VSCode Windows 64-bit Muat Turun
Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular