我是 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/