AttributeError: 'tuple' object has no attribute 'strip'

AttributeError: 'tuple' object has no attribute 'strip'

我使用 python,这是我的代码

        myUser = 'username'
        myServer = 'http://api.url.net', "{\"orga\":\"monorga\",\"coupon\":\"moncoupon\"}"
        myPass = 'pass'
        authString = base64.encodestring('%s:%s' % (myUser, myPass))
        headers = {'Authorization':"Basic %s" % authString}
        req = urllib2.Request(myServer, None, headers)
        openedUrl = urllib2.urlopen(req)

url = url.strip()
AttributeError: 'tuple' object has no attribute 'strip'

请帮帮我

当你写 url = 'https://api.url.net', "{\"orga\":\"monorga\",\"coupon\":\"moncoupon\"}" 时,基本上你只是在创建一个包含两个元素('https://api.url.net'"{\"orga\":\"monorga\",\"coupon\":\"moncoupon\"}")的 tuple,并为这个元组分配一个引用到 url 变量。这是因为在 python 中并不总是需要写元组的括号:例如 a = 1, 2

因此,url 现在是一个元组。此外,元组没有 strip 方法,因此您不能调用 url.strip.

要在 url 上调用 strip,您必须先将其转换为字符串。

我在遇到此错误消息时发现了这个问题。

就我而言,问题是我在声明字符串的行中有一个错误的尾随逗号,如下所示:

x = "my string",

因此,我觉得很奇怪,

x 是一个长度为 1 的元组。第一个也是唯一的元素是 "my string".

我觉得这是一个容易犯的错误,而且容易造成混淆,所以我想我应该把这个答案放在这里。