سلام وقت بخیر
میشه لطف کنید بگید مشکل کد من چیه که شمارنده و اطلاعات یوزر تو خروجی اشتباه درمیاد؟
ممنون
سلام محمد جان
ممنون میشم سورس کدت رو اپلود کنی تا بررسیش کنم
from abc import ABC class BaseClass(ABC): _id = 0 object_list = list() def __init__(self, *args, **kwargs): self.id = self.generate_id() self.store(self) super().__init__(*args, **kwargs) @classmethod def generate_id(cls): cls._id += 1 return cls._id @classmethod def store(cls, obj): cls.object_list.append(obj) ################################################################# from base import BaseClass class User(BaseClass): def __init__(self, first_name, last_name, phone_number, *args, **kwargs): self.first_name = first_name self.last_name = last_name self.phone_number = phone_number super().__init__(*args, **kwargs) @property def fullname(self): return f"{self.first_name} {self.last_name}" ###################################################### from random import choice from users import User FIRST_NAME = ['ali', 'mamad', 'reza', 'mahdi'] LAST_NAME = ['karimi', 'alavi', 'poladi'] MOBILE = [ '091687654', '0912876', '0992345', '09174567', '09138765' ] if __name__ == "__main__": for mobile in MOBILE: User(choice(FIRST_NAME), choice(LAST_NAME), mobile) for user in User.object_list: print(f"{User._id}\\t{User.fullname}")
سلام،
داخل حلقه از متغیر user با u کوچیک استفاده کنید:
for user in User.object_list: print(f"{user._id}\\t{user.fullname}")
با سلام
بنده هم همین مشکل رو دارم
این تقریبا کد تدریس شده است که زده
ولی شمارنده یکتا نداره
با کوچک کردن U هم مشکل حل نشد