Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengeluarkan Aksara Baris Baharu Dengan Cekap Apabila Membaca Fail dalam Python?

Bagaimanakah Saya Boleh Mengeluarkan Aksara Baris Baharu Dengan Cekap Apabila Membaca Fail dalam Python?

Barbara Streisand
Lepaskan: 2024-12-14 15:37:10
asal
958 orang telah melayarinya

How Can I Efficiently Remove Newline Characters When Reading Files in Python?

Menghapuskan Baris Baharu Semasa Membaca Kandungan Fail

Dalam Python, readlines() mengembalikan senarai rentetan di mana setiap elemen mewakili baris daripada fail . Walau bagaimanapun, rentetan ini tidak dapat tidak termasuk aksara baris baharu (n). Untuk mengekstrak data tanpa baris baharu ini, beberapa pendekatan tersedia.

Menggunakan splitlines()

Untuk memisahkan baris tanpa mengekalkan baris baharu, gunakan str.splitlines():

temp = file.read().splitlines()
Salin selepas log masuk

Melucutkan Talian Baharu Secara manual

Sebagai alternatif, tanggalkan baris baharu secara manual menggunakan pemahaman senarai:

temp = [line[:-1] for line in file]
Salin selepas log masuk

Mengendalikan Talian Baharu Penamat

Perhatikan bahawa kaedah ini menganggap fail berakhir dengan baris baharu; jika tidak, baris terakhir akan menjadi tidak lengkap. Untuk menangani perkara ini, tambahkan baris baharu secara eksplisit:

with open(the_file, 'r+') as f:
    f.seek(-1, 2)
    if f.read(1) != '\n':
        # add missing newline if not already present
        f.write('\n')
        f.flush()
        f.seek(0)
    lines = [line[:-1] for line in f]
Salin selepas log masuk

Pengguguran Baris Baharu

Dengan kaedah readlines(), kaedah writelines() tidak menambah baris baharu mengekori . Oleh itu, f2.writelines(f.readlines()) dengan setia mereplikasi f dalam f2.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Aksara Baris Baharu Dengan Cekap Apabila Membaca Fail dalam 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