Kaynakları yöneterek sorumlu bir şekilde yönetmeye çalışıyordum. Merak ediyorumBir dosyayı kapatmak ve python olmadığında ne zaman gereklidir?
data = cPickle.load(open("filename.pkl", 'r'))
olduğunu doğru bir yolu ve yapar: Ben sık sık insanların aşağıdakileri yapın bakın ortak bir deyim, bir dosya kullandıktan sonra kapalı olduğundan emin Ancak
with open("filename.txt", 'r') as f:
# ...use file `f`...
yapmak için anlamak Python, cPickle
bir istisna atarsa bile filename.pkl
'u her zaman kapatır? Güvenli olup olmadığını (veya açıklayan makalelere işaretçiler) bazı açıklamalar?
Evet, dosya nesnesi kapatılacaktır. CPickle'ın istisna mı atıp atmadığı fark etmez. Ancak, bunun ne zaman gerçekleşeceğine dair kontrolümüz olmadığından, gerçekten kötü bir uygulama, yani 'with' ile sopa. – freakish