Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Mengubah Suai Garis dengan Cekap dalam Fail Di Tempat Tanpa Membuat Fail Sementara?
Mengubah Suai Baris dalam Fail Di Tempat
Adakah mungkin untuk menghuraikan fail baris demi baris dengan cekap dan mengubah suai baris tertentu tanpa membuat salinan atau sementara fail?
Jawapan:
Ya, adalah mungkin untuk mensimulasikan penyuntingan di tempat menggunakan fail sandaran. Modul input fail menyediakan kefungsian yang diperlukan untuk ini.
Contoh:
Pertimbangkan skrip yang mengalih keluar baris yang tidak memenuhi syarat tertentu daripada fail yang disediakan sebagai argumen baris arahan atau stdin:
import fileinput for line in fileinput.input(inplace=True, backup='.bak'): if some_condition(line): print(line) # The modified line is output to the current file
Penggunaan:
Untuk mengalih keluar baris yang tidak memenuhi beberapa_syarat daripada first_file.txt dan second_file.txt, jalankan arahan berikut:
python grep_some_condition.py first_file.txt second_file.txt
Setelah selesai, first_file.txt dan second_file.txt hanya akan mengandungi baris yang memenuhi some_condition() predikat.
Pendekatan ini memastikan pengubahsuaian di tempat yang cekap dengan mencipta fail sandaran .bak semasa proses penyuntingan, mengekalkan fail asal jika berlaku sebarang ralat.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Suai Garis dengan Cekap dalam Fail Di Tempat Tanpa Membuat Fail Sementara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!