Вам нужно создать экземпляр вашего класса и использовать это имя для обозначения вашего класса, а не self
. Например:
class myClass:
def myfun(self):
pass
# code using the url
def __init__(self):
self.url = None
if __name__ == '__main__':
# list of integers
my_list = [1, 2, 3,4,5]
count = 0
obj = myClass() # HERE!
for item in my_list:
if count % 2 == 0:
obj.url = "http://myurl.com"
Вы должны ссылаться на свой класс как obj
после создания его экземпляра (или любого другого имени, которое вы ему дали). Если вы не создаете экземпляр класса, это просто некий скелет с предопределенными свойствами и поведением, но его пока нет. Вы не можете манипулировать им до создания экземпляра.
После его создания вы можете обратиться к нему с именем экземпляра, obj
в моем примере. self
в классе относится к самому себе, независимо от того, как он вызывается при создании экземпляра. Поэтому вне класса вы не можете использовать self
.