Pep8 E501:行太长错误

时间:2013-09-08 15:03:42

标签: python twitter pep8

我从此代码中收到错误E501: line too long

header, response = client.request('https://api.twitter.com/1.1/statuses   /user_timeline.json?include_entities=true&screen_name='+username+'&count=1')

但如果我这样写或以其他方式写作:

    header, response = client.request('\
       https://api.twitter.com/1.1/statuses/user_timeline.\
           json?include_entities=true&screen_name='+username+'&count=1')

我收到此错误:

ValueError: Unsupported URL             https://api.twitter.com/1.1/statuses/user_timeline            .json?include_entities=true&screen_name=username&count=1 ().

或者我收到此错误:

ValueError: No JSON object could be decoded

所以请告诉我,我怎么能传递这个错误?

3 个答案:

答案 0 :(得分:23)

如果你像这样打破它,那么行开头的空格就会成为你字符串的一部分。

试试这个:

header, response = client.request(
   'https://api.twitter.com/1.1/statuses/user_timeline.'
   'json?include_entities=true&screen_name=' + username + '&count=1')

字符串将automatically be concatenated

答案 1 :(得分:3)

您还可以进入代码分析并忽略该类型或错误/警告。我正在使用eclipse和Pydev。

Windows > Preferences > Pydev > Editor > Code Analysis > pycodestyle.py (pep8)

then add to arguments : --ignore=E501 

重新启动Eclipse,此警告应该没问题。

答案 2 :(得分:0)

您可以在多行上构建字符串:

st='https://api.twitter.com/1.1/statuses/user_timeline.json?'
st=st+'include_entities=true&screen_name='+username+'&count=1'

header, response = client.request(st)