PyDev и Eclipse - ImportError Нет имени модуля - после обновления интерпретатора

Я новичок в Eclipse и PyDev и застрял на этом, пока рассмотрел довольно много ответов на подобные вопросы здесь.

Я пытаюсь создать простое веб-приложение с использованием PyDev, Eclipse, Python 2.7 и Flask (в Windows) и следую этому руководству ( https://cloud.google.com/appengine/docs/python/getting-started/python-standard-env), который все работало нормально.

Я сделал несколько небольших изменений, но в настоящее время застрял на первом шаге, где я пытаюсь импортировать панд в моем скрипте (main.py)

Я получаю эту ошибку от отладчика, когда пытаюсь импортировать панд из моего скрипта

Traceback (most recent call last):

  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 240, in Handle

    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())

  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 299, in _LoadHandler

    handler, path, err = LoadObject(self._handler)

  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 85, in LoadObject

    obj = __import__(path[0])

  File "C:\Users\LONTI\workspace\Flask-app\main.py", line 3, in <module>

    import pandas as pd

ImportError: No module named pandas

Я проверил в " Настройки"> "Интерпретаторы"> "Интерпретатор Python", что был добавлен C:\Python27\lib\site-packages (где находится мой модуль pandas). Я также попытался удалить и добавить переводчик снова, но безрезультатно.

Кроме того, в редакторе я вижу, что панды не являются неразрешенными, поэтому кажется, что он может "видеть" это. И в рабочей области, под Python > System Libs > lib/site-packages, эти панды также есть.

Я немного растерялся, где еще проверить.

main.py выглядит следующим образом, где я просто вырезал как можно больше, чтобы попытаться убедиться, что больше ничего не влияет на импорт:

import logging
from flask import Flask, render_template, request
import pandas as pd


app = Flask(__name__)


@app.route('/form')
def form():
    return render_template('form.html')

@app.route('/submitted', methods=['POST'])
def submitted_form():

    name = request.form['name']
    pc1 = request.form['pc1']
    pc2 = request.form['pc2']
    pc3 = request.form['pc3']

    return render_template(
    'submitted_form.html',
    name=name,
    pc1=pc1,
    pc2=pc2,
    pc3=pc3)

@app.errorhandler(500)
def server_error(e):
    # Log the error and stacktrace.
    logging.exception('An error occurred during a request.')
    return 'An internal error occurred.', 500

Заранее спасибо за вашу помощь и дайте мне знать, если мне нужно предоставить дополнительную информацию.

2 ответа

Решение

Я думаю, проблема в том, что вы используете google-app-engine, который ограничивает то, что разрешено запускать.

Могут ли Pandas работать на Google App Engine для Python? имеет информацию, которая может быть полезной.

В частности, ошибка импорта вызвана неправильной установкой pandas в вашем приложении. См. Использование сторонних библиотек. Из установки сторонней библиотеки:

Чтобы использовать стороннюю библиотеку, скопируйте ее в папку в исходном каталоге вашего проекта. Библиотека должна быть реализована в виде чистого кода Python без расширений Си. Код загружается в App Engine вместе с кодом вашего приложения и учитывается в квотах файлов.

Эта цитата также связана с ответом, упомянутым Фабио, и вряд ли вы получите эту работу в стандартной среде GAE.

Это может работать в гибкой среде - без ограничений, но это существенно другой зверь.

Другие вопросы по тегам