Mam funkcję Python o nazwie plot_pdf(f)
, która może spowodować błąd. Używam listowych iteracyjne nad listę plików w tej funkcji:Obsługa wyjątków w języku Python w zrozumieniu listy
[plot_pdf(f) for f in file_list]
chcę korzystać z wyjątkiem bloku try-pominąć ewentualne błędy podczas iteracji i przejść do następnego pliku. Czy poniższy kod jest prawidłowym sposobem obsługi wyjątków w zrozumieniu listy w języku Python?
try:
[plot_pdf(f) for f in file_list] # using list comprehensions
except:
print ("Exception: ", sys.exc_info()[0])
continue
Czy powyższy kod przerwie bieżącą iterację i przejdzie do następnej iteracji? Jeśli nie mogę korzystać listowych złapać błędy podczas iteracji, to muszę używać normalnego for
pętlę:
for f in file_list:
try:
plot_pdf(f)
except:
print("Exception: ", sys.exc_info()[0])
continue
Chcę wiedzieć, czy mogę użyć try-except zrobić obsługę wyjątków w listowego.
„Używam listowych iteracyjne nad listę plików na tej funkcji” * kaszlu * * Kaszel * ** ** –
COUGHCHOKERETCH Chyba że jesteś używając listy stworzonej przez zrozumienie listy, trzymaj się pętli for. – chepner
Co jest nie tak z pętlą 'for'? –