Прежде всего, нет необходимости перебирать все вложения, чтобы получить число:
num_attach = len([x for x in attachments])
Вместо этого вы можете использовать свойство Attachments.Count , которое возвращает целое числос указанием количества объектов в указанной коллекции.
Во-вторых, убедитесь, что вы указали правильное имя файла:
attachment.SaveAsFile(os.path.join(get_path_clt1,attachment.FileName))
Я бы предложил проверить значение attachment.FileName
до или создатьown.
Наконец, вы можете проверить свойство Attachment.Type , которое возвращает константу OlAttachmentType
, указывающую тип указанного объекта.