31 Mayıs 2012, PERŞEMBE
En çok yolu var olmayan bir dosyayı silmek için pythonic
Eğer varsa dosya filename
silmek istiyorum. Söylemek uygun olur
if os.path.exists(filename):
os.remove(filename)
Daha iyi bir yolu var mı? Tek satırlık bir yolu?
CEVAP
31 Mayıs 2012, PERŞEMBE
Daha pythonic bir yol olacaktır:
try:
os.remove(filename)
except OSError:
pass
Bu bile daha fazla satır alır ve çok çirkin görünüyor, ancak os.path.exists()
gereksiz çağrı önler ve fazla kullanmak özel durumlar python kuralı izler.
Sizin için bunu yapmak için bir işlevi yazmak için yararlı olabilir:
import os, errno
def silentremove(filename):
try:
os.remove(filename)
except OSError as e: # this would be "except OSError, e:" before Python 2.6
if e.errno != errno.ENOENT: # errno.ENOENT = no such file or directory
raise # re-raise exception if a different error occured
Bunu Paylaş:
Python çoklu kurucular için temiz, pyt...
Bir liste python değeri öğe silmek içi...
&Quot bağlayın;ayrıcalıklı" port ...
Nasıl SD karttan bir dosyayı silmek iç...
'çiftleri silmek için en etkili y...