python, так что файл NameError: name '__file__' не определен [duplicate]

В стандарте C говорится, что переменная должна назначаться не более одного раза между двумя точками последовательности. Например, точка с запятой - это точка последовательности. Поэтому каждое утверждение вида:

i = i++;
i = i++ + ++i;

и т. Д. Нарушает это правило. В стандарте также говорится, что поведение не определено, а не неопределено. Некоторые компиляторы обнаруживают их и приводят к некоторому результату, но это не соответствует стандарту.

Однако две разные переменные могут быть увеличены между двумя точками последовательности.

while(*src++ = *dst++);

Вышеупомянутое общая практика кодирования при копировании / анализе строк.

14
задан geoffspear 7 October 2013 в 13:41
поделиться

2 ответа

Попробуйте добавить это в начале файла:

import inspect
import sys
if not hasattr(sys.modules[__name__], '__file__'):
    __file__ = inspect.getfile(inspect.currentframe())
10
ответ дан ethanhs 27 August 2018 в 15:59
поделиться

Не слишком уверен, как вы сделаете его совместимым с python, но gcc #define s __FILE__ для имени файла, в котором находится код.

0
ответ дан Steve Barnes 27 August 2018 в 15:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: