【问题标题】:Errors when doing an exception with requests in python [closed]在 python 中对请求执行异常时出错 [关闭]
【发布时间】:2014-03-08 22:13:12
【问题描述】:

我一直在寻找问题背后的原因,但无济于事。它在我添加异常处理程序之前就起作用了,所以我比较困惑。我是 python、JSON、API 和 sql 的新手,但不是编程新手。

def getSyllables(word):
conn = sqlite3.connect("wordbase.db")
c = conn.cursor()
c.execute('SELECT * FROM words WHERE Word =?', [word])
syllables = 0
if (c.fetchone() == None):
    url = 'http://rhymebrain.com/talk?function=getWordInfo&word=' + word
    try:
        r = requests.get(url)
        j = json.loads(r.text)
        rememberSyllables(word, int(j['syllables'])
        syllables = int(j['syllables'])
    except requests.exceptions.RequestException as e:
        syllables = 0
else:
    syllables = c.fetchone[1]
return syllables

我现在得到的错误是:

syllables = int(j['syllables'])
        ^
SyntaxError: invalid syntax

如果我删除它(即使我相当确定语法是正确的?):

except requests.exceptions.RequestException:
     ^
SyntaxError: invalid syntax

`

【问题讨论】:

  • 您在这一行缺少括号:rememberSyllables(word, int(j['syllables'])(在末尾添加一个)
  • 谢谢,我现在觉得很傻。我的三个朋友甚至没有发现它。
  • 这似乎是题外话,因为它是由一个简单的印刷错误引起的。

标签: python json exception-handling python-requests


【解决方案1】:

问题很简单,你没有关闭上一行的括号:

rememberSyllables(word, int(j['syllables']))

这应该可以解决问题。

【讨论】:

  • 好吧,我很抱歉浪费了大家的时间。不敢相信我没有听懂(甚至有一些朋友也检查过)。谢谢。
【解决方案2】:

rememberSyllables(word, int(j['syllables'])) 这里额外的 ) 可以解决问题!!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-23
    • 2010-11-25
    • 2010-09-23
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多