Bagaimana untuk Ubah Halakan Stdout ke Fail dalam Python?
Apabila melaksanakan skrip Python yang berjalan lama dalam sesi SSH dan latar belakangnya, skrip mungkin gagal disebabkan oleh IOError semasa menulis ke stdout jika sesi SSH ditutup. Isu ini boleh diatasi dengan mengubah hala stdout ke fail sebaliknya.
Menggunakan Python's Stdout Redirection
Satu pendekatan ialah mengubah hala stdout dalam skrip Python menggunakan modul sys:
import sys with open('file.txt', 'w') as sys.stdout: print('Example text')
Menggunakan Shell Pengalihan semula
Penyelesaian yang lebih mudah ialah menggunakan pengalihan shell semasa melaksanakan skrip:
$ python3 script.py > file.txt
Ini mengarahkan output stdout ke fail yang ditentukan. Ambil perhatian bahawa kaedah ini adalah platform-agnostik (berfungsi pada kedua-dua Windows dan Linux).
Penghadan
Menetapkan sys.stdout kepada fail mungkin tidak menghalang semua modul daripada mengeluarkan ke terminal. Dalam kes sedemikian, ubah hala shell ialah penyelesaian yang lebih dipercayai.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalihkan Keluaran Standard Python (stdout) ke Fail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!