Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python文件导入烧瓶问题_Python_Email_Flask_Flask Extensions - Fatal编程技术网

使用Python文件导入烧瓶问题

使用Python文件导入烧瓶问题,python,email,flask,flask-extensions,Python,Email,Flask,Flask Extensions,当我运行下面的文件时,出现以下错误: Traceback (most recent call last): File "/Users/msk/bssproject/sendmail.py", line 1, in <module> from flask import Flask, render_template, request, flash ImportError: No module named flask [Finished in 0.0s with exit co

当我运行下面的文件时,出现以下错误:

Traceback (most recent call last):
  File "/Users/msk/bssproject/sendmail.py", line 1, in <module>
    from flask import Flask, render_template, request, flash
ImportError: No module named flask
[Finished in 0.0s with exit code 1]

如果打开Python控制台,
importflask
工作吗?谢谢。当我在Python控制台中发出import flask命令时,它什么也不做,出现了一个带有>>>的新空行。您说您已经“安装了flask”,但意识到有多种方法可以“安装”Python库,然后有多种方法可以“运行”Python来使用这些库。如果使用
导入系统;print sys.path
您可以看到Python查找库的目录。您可能会发现,您运行python的方式与当前不同。如果您在应用程序开发中使用virtualenv,您可能希望在python代码的开头添加一个shebang,以确保您使用的是正确的python实例(及其库)。示例:
#/path/to/virtualenv/bin/python
from flask import Flask, render_template, request, flash
import flask.views
from flask.forms import ContactForm
from flask.ext.mail import Message, Mail

mail = Mail()

app = Flask(__name__)

mail.init_app(app)

app.config.update( 
    DEBUG = True, 
    MAIL_SERVER = 'smtp.gmail.com', 
    MAIL_PORT = 465, 
    MAIL_USE_TLS = False, 
    MAIL_USE_SSL = True, 
    MAIL_USERNAME = 'usernname@gmail.com', 
    MAIL_PASSWORD = 'password%')

mail = Mail(app)

def send_email():
    form = ContactForm()

    if request.method == 'POST':
        if form.validate() == False:
            flash('All fields are required')
        return render_template('feedback.html', form=form)
    else:
        msg = Message(form.subject.data, sender='mlkrgr@gmail.com', recipients=['mlkrgr@gmail.com'])
        msg.body = "feedback.html"      
        send (form.name.data, form.email.data, form.message.data)
        mail.send(msg)
    return 'Form posted'

class Submit(flask.views.MethodView):
    def post(self):
        send_email()
        return flask.render_template('thanks.html')

app.add_url_rule('/',
        view_func=Submit.as_view('submit'),
        methods=["POST"])

app.run()