python - 在 PythonAnywhere 上托管带有用户输入的简单脚本

标签 python flask pythonanywhere

我是 python 的初学者,我正在尝试在 PythonAnywhere 上托管我的 python 脚本,只是为了好玩。我从 Codecadamy 练习中获取了代码来制作 Python Piglatin 翻译器,这需要用户输入。我无法让它托管实际的应用程序部分。这是我当前的代码。

import os
from flask import Flask
app=Flask(__name__)

#main page
@app.route("/")
    def translate():
    return "Welcome to Nathan's Pyglatin Translator!"
    word1= input("Enter your word:")
    pyg="ay"
    word2=word1.lower()[1:len(word1)]
    word1=word1.lower()
    if len(word1)>1 and word1.isalpha():
            if word1[0]=="a" or "e" or "i" or "o" or "u" or "y":
                print(word1+" ---->"+word2+"-"+word1[0]+pyg)
            else:
                print(word1+" ---->"+word2+"-"+word1[0]+pyg)
    else:    
        print("Please enter a word longer than 1 character, without numbers.")
    print(" ")
    print("--Note that this doesn't work well with words that begin with a vowel--")
    print("Suggestions? Comments? Contact me.")

if __name__=="__main__":
port=int(os.environ.get('PORT',5000))
app.run(host='0.0.0.0',port=port)

我能够在 Spyder 或 Jupyter Notebook 中完美运行代码(无需与在网页上托管它相关的 Flask 代码),但是当我尝试按原样在 PythonAnywhere 上托管它时,它只显示“欢迎来到内森的 Pyglatin 翻译器!”

让它实际提示用户输入单词,然后浏览脚本并在屏幕上打印新单词的最简单、最不复杂的方法是什么?希望这只是我错过的一件小事。

最佳答案

这里是PythonAnywhere 管理员。这里有两种可能的解决方案。

  • 第一种方法使代码在控制台中运行。为了能够与匿名陌生人共享交互式控制台,我们有一个名为 gist consoles 的功能。 。要使其正常工作,您必须将代码上传到 github gist,然后将 gist url 复制到 pythonanywhere gist 控制台服务。然后您将获得一个 URL,该 URL 允许互联网上的任何人获得运行您的代码的自己的控制台

  • 第二种方法涉及将代码更改为 Web 应用程序。您将使用 HTML 来显示一个表单,允许用户提交其输入,并显示结果。在服务器端,您将使用 Python 来处理他们的请求。我的同事贾尔斯写道 a basic guide to use Flask on PythonAnywhere 。这实际上比您想要的稍微多一点(您不需要数据库部分),但是如果您遵循它,您将了解如何创建 HTML 页面和处理表单数据...

关于python - 在 PythonAnywhere 上托管带有用户输入的简单脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36783408/

相关文章:

python - 如何在路由函数中启用仅限开发的行为

python - 使用纯 python 将 docx 转换为 pdf(在 linux 上,没有 libreoffice)

python - 从 pythonanywhere.com 中的 .env 文件读取环境变量

python - REMOTE_USER 身份验证类型在 apache 超集中如何工作?

Docker 不保存使用 python 创建的文件 - Flask 应用程序

python - 从 3D 数组中选择非无限数据

python - Flask-sqlalchemy:何时关闭 session ?

python - PythonAnywhere 中导入错误

python - 如果组中的所有值都为零,则过滤掉整个组

python - 如何过滤一个 Numpy 数组,使每个 X 值只有一个 Y 值