Tôi có một số mã để đổi tên toàn bộ các tệp và di chuyển chúng sang thư mục mới bằng cách sử dụng os.rename()
. Nó khá đơn giản, không có gì hào nhoáng. Nó hoạt động cho đến khi tôi có một số chồng lên nhau theo lô và có các tệp trùng lặp, điều này đã tăng lên một số WindowsError
. Kể từ khi các mã làm việc trong tất cả các otherways, tôi đã làmGhi ngoại lệ cụ thể bằng cách thử ... ngoại trừ
try:
os.rename(...)
except WindowsError:
print "Duplicate file {}".format(fileName)
này làm việc tốt, ngoại trừ việc nó ngụ ý rằng tất cả WindowsError
s là từ các tập tin trùng lặp. Kết quả là khi một khía cạnh khác của kịch bản của tôi bị phá vỡ, nó không thành công về cơ bản âm thầm.
Làm cách nào tôi có thể sử dụng try...except
để chỉ bắt ngoại lệ cụ thể? Nếu nó không thể, những cách giải quyết tồn tại?
bạn có thể thử 'bắt WindowsError như e: 'và nhìn vào' str (e)', và 'dir (e)' –
@JoranBeasley, tôi nghĩ về điều đó, nhưng không phải là chuỗi kết hợp với hệ thống ngoại lệ phụ thuộc? – wnnmaw
ý của bạn là gì? –