Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Sepuluh operasi fail terbina dalam teratas Python

Sepuluh operasi fail terbina dalam teratas Python

WBOY
WBOYke hadapan
2023-04-12 23:01:081791semak imbas

Sepuluh operasi fail terbina dalam teratas Python

Terdapat banyak permintaan harian untuk pemprosesan kumpulan fail, dan selalunya perlu menulis skrip dalam Python untuk memanggil fail luaran!

Kali ini kami telah menyusun sepuluh kaedah pengendalian fail yang paling biasa digunakan dalam Python, hanya gunakannya secara langsung!

1. Buat dan buka fail

Jika anda ingin mengendalikan fail, anda perlu mencipta atau membuka fail yang ditentukan terlebih dahulu dan mencipta objek fail Ini dilaksanakan menggunakan open(). kaedah. Format sintaks adalah seperti berikut:

file=open(filename[, mode[, buffering]])

Penerangan parameter

  • fail: objek fail yang dicipta
  • nama fail: nama fail yang akan dibuat atau dibuka, petikan tunggal diperlukan disertakan dalam petikan berganda. Jika fail yang akan dibuka berada dalam direktori yang sama dengan fail semasa, tulis nama fail secara langsung jika tidak, nyatakan laluan penuh. Mod
  • : parameter pilihan, digunakan untuk menentukan mod terbuka, lalai ialah baca sahaja (iaitu r)
  • penimbal: parameter pilihan, digunakan untuk menentukan mod cache membaca dan menulis fail , nilai ialah 0 bermakna tiada caching, nilai 1 bermakna caching; jika lebih besar daripada 1, ia bermakna saiz penimbal. Mod caching lalai.

Secara lalai, pengecualian akan dipaparkan apabila membuka fail yang tidak wujud.

Sepuluh operasi fail terbina dalam teratas Python

Penyelesaian:

  • Cipta fail test.txt dalam direktori semasa (direktori yang sama dengan fail boleh laku)
  • Panggilan Apabila menggunakan kaedah open(), tentukan nilai parameter mod sebagai w, w+, a, a+ Jika ia tidak wujud, ia akan dibuat.

Mod yang berbeza dijelaskan sepenuhnya.

Sepuluh operasi fail terbina dalam teratas Python

Nota: Buka fail menggunakan pengekodan GBK secara lalai Apabila fail yang dibuka bukan pengekodan GBK, pengecualian mungkin dipaparkan. Penyelesaian: 1. Ubah suai terus pengekodan fail 2. Nyatakan secara langsung kaedah pengekodan untuk digunakan semasa membuka fail (disyorkan).

file=open('test.txt','r',encoding='utf-8')

2. Tutup fail

Selepas membuka fail, ia perlu ditutup tepat pada masanya untuk mengelakkan daripada menduduki sumber Gunakan kaedah close() untuk mencapai ini.

file.close()

Nota: Apabila menggunakan kaedah close(), maklumat yang belum ditulis dalam penimbal akan disiram terlebih dahulu, dan kemudian fail akan ditutup.

3. Gunakan pernyataan dengan untuk membuka fail

Untuk membuka fail, anda perlu menutupnya tepat pada masanya. Jika anda terlupa untuk menutupnya, masalah yang tidak dijangka mungkin berlaku. Di samping itu, jika pengecualian dipaparkan semasa membuka fail, fail tidak akan ditutup dalam masa. Untuk mengelakkan masalah sedemikian, anda boleh menggunakan pernyataan with yang disediakan oleh Python, yang memastikan fail yang dibuka ditutup selepas pernyataan with dilaksanakan, tidak kira sama ada pengecualian dipaparkan. Sintaks asas adalah seperti berikut:

with expression as target:
 with-body

Penerangan parameter:

  • Ungkapan: Tentukan ungkapan, yang boleh menjadi kaedah open() pembukaan sebuah fail.
  • sasaran: digunakan untuk menentukan pembolehubah untuk menyimpan hasil ungkapan ke dalam pembolehubah.
  • dengan-badan: digunakan untuk menentukan badan pernyataan dengan Ia boleh menjadi beberapa pernyataan operasi yang berkaitan selepas melaksanakan pernyataan dengan, atau ia boleh dihantar terus.

with open('test.txt','w') as file
pass

4. Tulis kandungan fail

Objek fail Python menyediakan kaedah tulis() untuk menulis kandungan pada fail.

file.write(str)

Di mana, fail ialah objek fail terbuka; str ialah rentetan yang akan ditulis. Ambil perhatian bahawa penulisan memerlukan kebenaran menulis dan menentukan mod pembukaan sebagai w (boleh ditulis) atau (boleh ditambah)

Gunakan fungsi open() dan tukar mod kepada w atau a untuk membuka fail untuk mencipta objek fail . Dalam mod w, data lama akan ditimpa dan data baharu akan ditulis Dalam mod, data baharu boleh ditambah berdasarkan data asal.

5. Baca data

Selepas membuka fail, selain menulis atau menambahkan kandungan padanya, anda juga boleh membaca kandungan dalam fail. Anda perlu tahu bahawa terdapat tiga situasi utama apabila mod pembukaan fail ialah r (baca) atau r+ (baca dan tulis):

  • Baca bilangan aksara yang ditentukan
  • file.read([size])——yang saiz ialah parameter pilihan Jika diabaikan, semua kandungan akan dibaca sekaligus.
  • Baca satu baris
  • fail.readline() - baca satu baris data setiap kali Apabila fail besar, baca baris demi Pilih baris.
  • Baca semua baris
  • file.readlines() - Mengembalikan senarai rentetan, setiap elemen ialah baris fail.

with open('text.txt','r+',encoding='utf-8') as file:
print("读取前4个字符串")
print(file.read(4))
print("读取一行")
print(file.readline())
print("读取所有行")
print(file.readlines())

Nota: Jika anda ingin membaca sebahagian daripada kandungan, anda boleh menggunakan kaedah fail object seek() dahulu untuk mengalihkan penuding fail ke lokasi baharu , dan kemudian gunakan kaedah baca () untuk mendapatkan.

file.seek(mengimbangi[,dari mana]). bermakna bermula dari permulaan fail. 1 bermakna mengira dari kedudukan semasa, 2 bermakna mengira dari hujung fail, lalai ialah 0.

6 Menyalin fail

Keperluan Python untuk menggunakan kaedah copyfile() modul shutil untuk menyalin fail.

shutil.copyfile(src,dst)

其中,src:要复制的源文件;dst:复制到的目标文件。

7、移动文件

Python移动文件需要使用shutil模块的move()方法。

shutil.move(src,dst)

其中,src:要移动的源文件;dst:移动到的目标文件。

8、重命名文件

Python重命名文件需要使用os模块的rename()方法。

os.rename(src,dst)

其中,src:指定要重命名的源文件;dst:指定重命名后文件。为确保正常执行,可以使用os.path模块的exists()方法判断要操作的文件是否存在。

9、删除文件

Python中删除文件需要使用os模块的remove()方法。

os.remove(path)

其中,path:指定要删除的文件路径,相对路径或绝对路径。

10、获取文件基本信息

文件本身包含一些信息,如文件最后一次访问时间、最后一次修改时间、文件大小等基本信息。通过os模块的stat()方法获取。

os.stat(path)

以上就是Python内置的十大常用的文件操作方法。

Atas ialah kandungan terperinci Sepuluh operasi fail terbina dalam teratas Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam