Contohnya dengan modul tempfile
Kita akan mulakan dengan contoh mudah dengan Python tempfile modul di sini.
Membuat fail Sementara
Perkara pertama yang diperlukan untuk menyimpan data sementara adalah fail di mana kita dapat menyimpan data ini. Ini boleh dilakukan dengan menggunakan Fail Sementara () fungsi. Kelebihan terbesar dengan fungsi ini adalah apabila fail dibuat dengan fungsi ini, tidak ada pautan ke fail ini yang dibuat dalam sistem fail sistem dan oleh itu, tidak mungkin proses lain mengakses fail ini.
Mari lihat program ringkas yang memanfaatkan Fail Sementara () fungsi:
import osimport tempfile
# Menggunakan PID dalam nama fail untuk pengenalan yang lebih baik
fail = '/ tmp / linuxhint_% s.txt '% os.getpid ()
# Menyediakan mod Fail
temp_file = buka (fail, 'w + b')
cuba:
cetak ('temp_file: 0'.format (temp_file))
cetak ('temp_file.nama: 0 '.format (temp_file.nama))
akhirnya:
temp_file.tutup ()
# Memadam sendiri fail sementara
os.buang (fail)
cetak ('Metadata Sementara Sementara:')
temp_file = tempfile.Fail Sementara ()
cuba:
cetak ('temp_file: 0'.format (temp_file))
cetak ('temp_file.nama: 0 '.format (temp_file.nama))
akhirnya:
# Membersihkan fail apabila ditutup dipanggil
temp_file.tutup ()
Inilah yang kita dapat kembali dengan arahan ini:
Membuat fail sementara
Fail ini akan dihapuskan sebaik sahaja tutup () fungsi dipanggil pada tempfile rujukan.
Membaca dari fail Sementara
Malah membaca dari fail sementara adalah mudah dan boleh dilakukan dalam satu kaedah panggilan dalam modul yang sama. Kelebihan dengan fungsi ini ialah ia membantu kita untuk mengelakkan operasi IO yang kompleks terlibat sekiranya kita perlu melakukan operasi ini secara manual. Berikut adalah program yang menunjukkan fungsi ini dalam tindakan:
import osimport tempfile
tempFile = tempfile.Fail Sementara ()
cuba:
cetak ('Menulis data ke tempFile:')
tempFile.tulis (b'Setiap data boleh masuk ke sini.')
tempFile.mencari (0)
cetak ('Membaca data bentuk tempFile: \ n \ t 0'.format (tempFile.baca ()))
akhirnya:
tempFile.tutup ()
Mari lihat output untuk arahan ini:
Python membaca dari fail sementara
Semua teks dalam fail sementara diberikan kembali dengan panggilan kaedah tunggal.
Menulis teks biasa ke dalam Fail Sementara
Dalam program kami di atas, semua data yang ditulis ke fail tidak dalam bentuk format teks biasa. Sekiranya kita ingin melakukannya untuk operasi teks sederhana, kita hanya dapat mengubah mod fail ketika kita membuka fail sementara untuk pengubahsuaian:
import tempfilefileMode = 'w + t'
dengan tempfile.TemporaryFile (mode = fileMode) sebagai fail:
fail.garis panduan (['Linux \ n', 'Ubuntu \ n'])
fail.mencari (0)
untuk item dalam fail:
mencetak (item.rstrip ())
Inilah yang kita dapat kembali dengan arahan ini:
Menulis teks biasa ke dalam fail
Membuat fail Sementara Dinamakan
Fail yang perlu dibentangkan di beberapa proses mesti diberi nama sehingga proses tidak menghapusnya ketika selesai. Inilah cara kami dapat membuat fail bernama sementara:
import osimport tempfile
tempFile = tempfile.DinamakanTemporFile ()
cuba:
cetak ('tempFile: 0'.format (tempFile))
cetak (temp.tempFile: 0 '.format (tempFile.nama))
akhirnya:
# Memadam fail juga
tempFile.tutup ()
cetak ('Adakah wujud? : 0 '.format (os.jalan.wujud (tempFile.nama)))
Mari lihat output untuk arahan ini:
Dinamakan tempfile
Sekiranya kami tidak menghapus fail, kami dapat memeriksa keberadaannya di program lain dan menggunakannya jika ada di lokasi yang ditentukan.
Menyediakan Nama Fail Akhiran dan Awalan
Untuk mengenal pasti fail yang termasuk dalam proses kita sendiri pada sistem fail, kita dapat menerapkan Suffix dan Prefix pada nama file juga:
import tempfiletempFile = tempfile.NamedTemporaryFile (akhiran = '_ ubuntu',
awalan = 'linuxhint_',
dir = '/ tmp',)
cuba:
cetak ('tempFile:', tempFile)
cetak ('tempFile.nama: ', tempFile.nama)
akhirnya:
tempFile.tutup ()
Inilah yang kita dapat kembali dengan arahan ini:
Mengamalkan awalan dan akhiran pada nama fail
Kami memberikan tiga parameter untuk kaedah yang berfungsi sebagai Akhiran dan Awalan untuk nama fail yang akan dijadikan lokasi yang kami tentukan.
Kesimpulannya
Dalam pelajaran ini, kami melihat bagaimana kami dapat menggunakan modul tempfile Python untuk menguruskan fail sementara dalam kod kami. Baca lebih banyak catatan berdasarkan Python di sini.