这是代码...................................... ........当它运行时,它只会运行 redditNeed == 1 并打开 5 个窗口。然后,当我点击除主页之外的任何其他页面时,它会提示我网络浏览器未定义
redditNeed = input("which subreddit do you want to reach; front page{1}, athesism{2}, bitcoin{3}, politics{4}, worldnews{5}")
if redditNeed == 1:
import webbrowser
url="http://reddit.com"
webbrowser.open(url)
if redditNeed == 2:
import webbrowser
url="http://reddit.com/r/atheism"
webbrowser.open(url)
if redditNeed == 3:
import webbrowser
url="http://reddit.com/r/bitcoin"
webbrowser.open(url)
if redditNeed == 4:
import webbrowser
url="http://www.reddit.com/r/politics"
webbrowser.open(url)
if redditNeed == 5:
import webbrowser
url="http://www.reddit.com/r/worldnews"
webbrowser.open(url)
最佳答案
一些值得指出的事情
1)一开始只需导入一次webbrowser
2)对每个条件使用elif语句而不是if语句
3) 您正在将字符串与整数进行比较,这永远不会是真的,因此您可以将 redditneed 转换为 int,如 int(redditneed) 或将其与字符串(例如“2”)进行比较,而不是 2。
4) 如果您总是要打开网页,只需在 if 末尾打开它,而不是在每个单独的 if 语句中执行
5)我从你的评论中看到你正在运行 python 2.7,这意味着你不应该使用输入,你应该使用 raw_input
6) 您在寻求帮助时没有向我们提供更多详细信息,例如您的 Python 版本或错误代码,这意味着我们很难为您提供帮助
7)最糟糕的是,您在之前在这里问过一个小时后又问了完全相同的问题,而没有尝试任何新的内容:What is wrong with this input code?? and browser launcher in python
这是一些等效代码的示例
import webbrowser
redditNeed = raw_input("which subreddit do you want to reach; front page{1}, atheism{2}, bitcoin{3}, politics{4}, worldnews{5}")
redditNeed = int(redditNeed)
if redditNeed == 1: url="http://reddit.com"
elif redditNeed == 2: url="http://reddit.com/r/atheism"
elif redditNeed == 3: url="http://reddit.com/r/bitcoin"
elif redditNeed == 4: url="http://www.reddit.com/r/politics"
else: url="http://www.reddit.com/r/worldnews"
webbrowser.open(url)
关于python - 这个输入代码有什么问题吗?和 python 中的浏览器启动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22418761/