#python #class #memory-management #pickle #weak-references
Вопрос:
У меня есть словарь под названием Яйца:
Eggs = {}
У меня есть класс под названием UserEgg:
class UserEgg:
def __init__(self, user):
self.warns = 0
self.xp = 0
self.user = user
self.mute_time = 0
self.records = []
def InfoEmb(self):
self.InfoEmbed = discord.Embed(title=f"{self.user} | User-info")
self.InfoEmbed.set_thumbnail(url=self.user.avatar_url)
self.InfoEmbed.add_field(name="Buttons:",
value="⚠️: Warn usern🔇: Mute usern🦵: Kick usern🔨: Ban usern📂: Open recordsn❌: Close")
return self.InfoEmbed
Яичный дикт должен содержать идентификатор (строку) и объект UserEgg:
Eggs = {"122938192381923": UserEgg(0)}
Я хочу иметь save()
функцию для сохранения этого яичного дикта в файл (предпочтительно маринованный огурец).
Это то, что у меня есть:
def save(Eggs):
with open("user_data.pkl", "wb") as fp:
pickle.dump(Eggs, fp)
Когда я использую эту save(Eggs)
функцию сейчас, я получаю Cannot pickle weakref object
Есть ли какой-либо способ сделать его неслабым объектом или исправить ошибку?