Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengubah Suai Talian dalam Fail Di Tempat Menggunakan Python?

Bagaimanakah Saya Boleh Mengubah Suai Talian dalam Fail Di Tempat Menggunakan Python?

Susan Sarandon
Lepaskan: 2024-12-04 21:48:15
asal
511 orang telah melayarinya

How Can I Modify Lines in Files In-Place Using Python?

Mengubah Suai Baris dalam Fail Di Tempat

Menghuraikan fail baris demi baris menyediakan keupayaan berharga untuk memanipulasi kandungan. Walau bagaimanapun, jika timbul keperluan untuk mengedit baris dalam fail semasa anda melintasinya, anda mungkin tertanya-tanya sama ada ini boleh dicapai.

Pengeditan Sebaris

Secara tradisinya, mengubah suai fail dalam -tempat bukanlah satu tugas yang mudah. Walau bagaimanapun, teknik simulasi menggunakan fail sandaran, serupa dengan pendekatan yang diambil oleh modul input fail Python, boleh memberikan penyelesaian.

Contoh Skrip

Pertimbangkan contoh skrip ini:

#!/usr/bin/env python
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print line, # this goes to the current file
Salin selepas log masuk

Dalam skrip ini, kami membaca daripada fail yang disediakan pada baris arahan atau stdin menggunakan fileinput.input. Dengan menyatakan inplace=True, kami membolehkan pengubahsuaian fail semasa. Parameter sandaran mencipta fail sandaran dengan sambungan .bak.

Operasi

Apabila skrip berulang melalui setiap baris, ia menilai keadaan tertentu (some_condition) pada setiap barisan. Jika syarat dipenuhi, baris dicetak kembali ke fail semasa, mengubah suainya di tempat dengan berkesan.

Contoh Penggunaan

Sebagai contoh, menjalankan skrip dengan :

$ python grep_some_condition.py first_file.txt second_file.txt
Salin selepas log masuk

akan menghasilkan first_file.txt dan second_file.txt yang mengandungi hanya baris yang memenuhi some_condition() predikat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Suai Talian dalam Fail Di Tempat Menggunakan 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