Открытие файла Python (имя файла, «r») не возвращает результат и не вызывает исключенияPython

Программы на Python
Ответить
Anonymous
 Открытие файла Python (имя файла, «r») не возвращает результат и не вызывает исключения

Сообщение Anonymous »

Python 3.11.2 на книжном черве Debian

Код: Выделить всё

def parse_waypoint_file(filename, file=None):
file=None #gfp added for test
cherrypy.log('in parse_waypoint_file: filename = %s' % filename)
if not file:
cherrypy.log('in parse_waypoint_file: if not file block with filename = %s' % filename)

try:
file = open(filename, "r")
cherrypy.log('in parse_waypoint_file after file-open, file = %s' % file)
except:
cherrypy.log('file open() error in parse_waypoint_file with filename = %$s' % filename)
else:
cherrypy.log('file open() succeeded in parse_waypoint_file with filename = %$s' % filename)

#241207 gfp bugfix: parser fcns need 'lines' (list of lines) vs 'file'
lines = file.readlines()
....
Вывод:

Код: Выделить всё

[08/Dec/2024:01:02:48]  in parse_waypoint_file: filename = Slovenia3.cup
[08/Dec/2024:01:02:48]  in parse_waypoint_file: if not file block with filename = Slovenia3.cup
Я отлаживаю чужой код и новичок в Python (много C++, C# и т. д.). Я думал, что смогу решить проблему, добавив строку ' file = open(filename, "r")
, но вместо этого я, похоже, создал строку большего размера. Файл, указанный в параметре filename, существует, но он может быть или не быть локальным для веб-приложения, в котором выполняется этот код.
Чтобы помочь мне понять, что происходит, я добавил блок «попробуй - кроме - еще», но блоки «кроме» и «еще» никогда не достигаются. Код действует так, как будто функция open() зависает и никогда не возвращается, но при этом не генерирует исключение.
может ли кто-нибудь сказать мне, что я здесь делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -exception
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»