benim ekran mesajları renklendirmek için aşağıdaki işlevleri vardır: şöyle ben bunları kullanmakSTDOUT Basım ve ANSI renk kodlarını kaldırılırken log dosyası
def error(string):
return '\033[31;1m' + string + '\033[0m'
def standout(string):
return '\033[34;1m' + string + '\033[0m'
:
print error('There was a problem with the program')
print "This is normal " + standout("and this stands out")
Ben log istiyorum umarım her print
açıklamaya ikinci "günlük" satırını eklemek zorunda kalmadan ANSI renk kodları oLMADAN (STDOUT ek olarak) bir dosyaya çıktı.
Bunun nedeni, python program.py > out
ise, out
dosyasının, düz bir metin düzenleyicide açtığınızda korkunç görünen ANSI renk kodlarına sahip olmasıdır.
Herhangi bir öneri?
Mükemmel cevap biçimlendirme zorlamak için küçük bir değişiklik ihtiyacı var - bu tam olarak ne ihtiyacım olabilir. Aslında günlük modülü kullanarak, ancak kullanıcı çıkışını yönlendirmek ve bir insan okunabilir dosya almak seçeneğine sahip izin vermek istiyorum duyuyorum. Günlüğün kendisi, günlüğe kaydetme modülü tarafından oluşturulur (ve yaklaşımınızla büyük ihtimalle istediğimi alırım). – Escualo
Sadece yaklaşımınızı test ettim ve tam olarak beklendiği gibi çalışıyor. Çok teşekkürler! – Escualo