Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 04.04.2018, 11:26   #1
3dbobr
Новичок
 
Регистрация: 04.04.2018
Сообщений: 1
Репутация: 10
По умолчанию не отрабатывается исключение

Добырй день.
прошу помощи. Не отрабатываесят исключение, точнее если я снимаю коментарий # то прграмма просто завершает работу в районе строки
my_dict=open(model+"_dic.txt") без извещения что файл не найден.

Если коментарии остаются то программа все отрабатывает корректно, но в случае отсутствия файла выкидывает ошибку и закрывается

Код:

import re
model=input("введите имя обрабатываемого файла: ")
itog = open(model+"_model.html", "w")
itog.write("<html><head><title></title></head><body>")
itog.close()

#try:
itog = open(model+"_model.html", "a")
#except PermissionError:
#    print("в качестве имени использован запрещенный символ /,* и т.п.") #не понятно почему но исключение не отлавливается
#raise SystemExit  

#try:
my_dict=open(model+"_dic.txt")
#except FileNotFoundError:
#    print("файл словаря "+model+"_dic.txt не найден") #исключение отлавливается но печати сообщения нет
#raise SystemExit
l = my_dict.read().splitlines()

for i in range(len(l)):
    l[i]=l[i].replace(">", " &qt ") #делаем замену в словаре спец символа >
    l[i]=l[i].replace("<", " &lt") #делаем замену в словаре спец символа <

#try:
my_text=open(model+"_txt.txt")
#except FileNotFoundError:
#    print("файл для обработки текста "+model+"_txt.txt не найден") #исключение отлавливается но печати сообщения нет
#raise SystemExit


Последний раз редактировалось Аватар; 04.04.2018 в 11:29.
3dbobr вне форума   Ответить с цитированием
Старый 09.04.2018, 01:52   #2
Stanislav
Квадрокоптерист
ПрофессионалФорумчанин
 
Регистрация: 29.09.2007
Сообщений: 1,803
Репутация: 532
По умолчанию

Код:

import os

if os.path.exists(fName):
   with open(fName, 'rb') as f:
       try:
           # do stuff
       except : # whatever reader errors you care about
           # handle error

или так
Код:

try:
    f = open(fname, 'rb')
except IOError:
    print "Could not read file:", fname
    sys.exit()

__________________
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
Stanislav вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неперехваченное исключение Инночек WordPress и другие CMS 0 25.11.2013 15:03
Explorer.exe Исключение неизвестное программное исключение Windows XP, что делать? Igorilla Windows 6 02.04.2013 22:49
Исключение неизвестное программное исключение... Host-2013 Паскаль 19 09.02.2013 21:30
Не отрабатывается WK_KEYDOWN Crudelis Win Api 0 26.11.2010 21:44
C# Исключение dividebyzeroexception byte916 Помощь студентам 1 14.10.2010 17:49


01:33.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru