为什么我的程序返回NameError:名称“self”未定义为错误

2024-09-27 02:26:25 发布

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

我正在尝试获取一个程序,告诉我有多少帖子我喜欢使用InstagramAPI模块。它正在返回NameError: name 'self' is not defined,我不知道为什么

这是我的代码:

from InstagramAPI import InstagramAPI
import time, json, re
import json
import requests
import os
username = ''
password = ''

i = InstagramAPI(username, password)

i.login()

def getTotalLikedMedia(self, scan_rate=1):
        next_id = ''
        liked_items = []
        for x in range(0, scan_rate):
            temp = self.getLikedMedia(next_id)
            temp = self.LastJson
            try:
                next_id = temp["next_max_id"]
                for item in temp["items"]:
                    liked_items.append(item)
            except KeyError as e:
                break
        return liked_items

getTotalLikedMedia

Tags: importselfidjsonforscanrateusername
2条回答

self表示class的实例。通过使用绑定到名称self的参数,我们可以访问class的属性和方法

您似乎正在定义一个方法,而没有它应该是方法的类

class something:
   def __init__(self, something):
      self.something = something

ins = something()

如果不发布完整的回溯,就不可能知道到底发生了什么。我猜你发布的代码并不是你电脑上的样子。它看起来像一个方法定义,但在这里它只是一个普通函数,其中self只是一个名为。。。好吧,赛尔夫。从技术上讲,这并没有什么问题,调用该方法可能会在解释器尝试执行第temp = self.getLikedMedia(next_id)行时引发AttributeError,除非您作为self传递某个具有该方法getLikedMedia()的对象

相关问题 更多 >

    热门问题