AttributeError:'NoneType'对象没有属性'id'...我想我已经尝试了所有内容

时间:2016-12-25 18:30:55

标签: python attributeerror

我知道此问题之前已得到解决,但所提供的解决方案似乎都不起作用,也许这就是我的代码的工作方式。

我有一个非常简单的课程:

class Artist:
    def __init__(self, id):
        self.id = id;

从另一个Python文件中,我创建了一个类的新实例并分配了Id值:

def parseartist(response):
    parsed = json.loads(response.decode('utf-8'))
    try:
        l  = parsed.get("artists", {}).get("items", {})
        if len(l) > 0:
            f = str(l[0])
            g = f.split(",")

            id = ""
            for i in g:
                if "'id':" in i:
                    idstr = i.split(" ")
                    id = idstr[2]
                    id = id.replace("'", "")
            artist = Artist(id) 
            print(artist.id)
            return artist
    except KeyError:
        print("KeyError")

艺术家ID值确实已分配(因为我在返回之前打印出它的值)。

然后,我尝试在另一个Python文件中使用此类,并尝试获取Artist Id的值我得到此错误:

  

AttributeError:'NoneType'对象没有属性'id'

artistclass = jsonreader.parseartist(response)
print(artistclass.id)

我使用Artist迭代了dir()课程,我可以看到id作为属性。知道我做错了什么(除了编写错误的代码)?

0 个答案:

没有答案