IfElse语句在Python中不请求输入

2024-10-01 05:05:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用Python编写一个基本的Twitter scraper,虽然我已经有了它,这样它就可以搜索硬编码的词,但我正在尝试将它设置为从用户输入中获取搜索词

当我的if/else语句在被请求时接受输入时,它就不能运行了,说明没有定义rawinput。rawinput在if语句中,我在下面包含了我的代码

我应该说我对Python还比较陌生

我尝试过从if/else中删除rawinput并将其分开,但同样的问题也发生了

userinp = input("Select search type.  1 = tweets.  2 = people")

if userinp == 1:
        entry = rawinput
        query = u'q='
elif userinp == 2:
        entry = rawinput
        query = u'f=users&vertical=default&q='

searchurl = baseurl + query + entry

预期的结果是,用户选择选项1或2,然后被要求输入他们的搜索词

结果如下:

Select search type.  1 = tweets.  2 = people1
Traceback (most recent call last):
  File "Scrape.py", line 22, in <module>
    userentry = rawinput('enter search term')
NameError: name 'rawinput' is not defined

提前感谢您的帮助


Tags: 用户编码searchiftypetwitter语句scraper
2条回答

它应该是raw_input()而不是rawinput。所以你的代码应该是这样的

userinp = input("Select search type.  1 = tweets.  2 = people")

if userinp == 1:
        entry = raw_input()
        query = u'q='
elif userinp == 2:
        entry = raw_input()
        query = u'f=users&vertical=default&q='

searchurl = baseurl + query + entry

改用input(),不要忘记括号

另外,input()将输入转换为字符串,因此如果使用整数,if条件将永远不会满足。考虑用if userinp == '1':elif userinp == '2':替换

相关问题 更多 >