App Engine Python время выполнения не дает такой же результат, как локальный - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть стандартный проект Python на App Engine. Он использует модуль ast для преобразования Python исходного кода в код другого языка. Я столкнулся с проблемой, которая не была вызвана в локальной среде (Python 3.7.4 на macOS 10.15.4). Повторное развертывание прошло успешно, но API не будет обновлен. Создание другого проекта с теми же файлами не работает должным образом. Я также попробовал Cloud Shell, загрузив файлы или python3 main.py на локальный, тогда они были правильными. Имеет ли Python время выполнения в App Engine некоторые различия?

Подробности:

Позвольте py3ca.py прочитать приведенный ниже исходный код Python в качестве входных данных для локальной среды ( $ python3 py3ca.py fizzbuzz.py).

# fizzbuzz.py
res = []
for i in range(1, 101):
    if (i % 15) == 0:
        res.append('Fizz Buzz ')
    elif (i % 3) == 0:
        res.append('Fizz ')
    elif (i % 5) == 0:
        res.append('Buzz ')
    else:
        res.append(i)
print(res)

Это производит:

[
  [1, [], "#", "0_18"],
  [1, [], "=", ["var", "res"], [[]]],
  [1, [], "for range", "i", [1, 101]],
    [2, [], "ifs"],
      [3, [], "if", ["==", ["%", ["var", "i"], 15], 0]],
        [4, [], "call", null, ["attr", "res", "append"], ["Fizz Buzz "]],
      [3, [], "elif", ["==", ["%", ["var", "i"], 3], 0]],
        [4, [], "call", null, ["attr", "res", "append"], ["Fizz "]],
      [3, [], "elif", ["==", ["%", ["var", "i"], 5], 0]],
        [4, [], "call", null, ["attr", "res", "append"], ["Buzz "]],
      [3, [], "else"],
        [4, [], "call", null, ["attr", "res", "append"], [["var", "i"]]],
  [1, [], "call", null, ["var", "print"], [["var", "res"]]],
  [1, [], "end"]
]

Однако, Сценарий приложений, который отправляет в App Engine , производит: Wrong result

Не соответствует местному (строки 8, 10, 12).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...