这是代码.................................................... .....当它运行时,只会运行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)您只需要在开始时导入一次Web浏览器
2)对每个条件使用elif语句代替if语句
3)您正在将字符串与int进行比较,这将永远是不正确的,因此您可以将redditneed转换为int这样的int(redditneed)或将其与诸如“ 2”而不是2的字符串进行比较。
4)如果您要始终打开网页,则只需在ifs末尾打开它,而不要在每个if语句中都进行操作
5)我从您的评论中看到您正在运行python 2.7,这意味着您不应该使用input,而应该使用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/