v0.2.4 基本可用型
This commit is contained in:
32
reactor.py
32
reactor.py
@@ -3,10 +3,10 @@ import particles as pt
|
||||
import pathlib
|
||||
import auxiliary as aux
|
||||
class Parser():
|
||||
"""轻量级版本文件解析器, 用于解析记忆状态"""
|
||||
"""轻量级版本文件解析器, 用于文件管理器的记忆状态解析"""
|
||||
|
||||
class Reactor():
|
||||
"""反应堆对象, 用于处理 & 分配一次文件记忆流程的资源/策略"""
|
||||
"""反应堆对象, 用于全面解析文件, 并处理和分配一次文件记忆流程的资源与策略"""
|
||||
def __init__(self, nucleon_file: pt.AtomicFile, electron_file: pt.AtomicFile, tasked_num):
|
||||
# 导入原子对象
|
||||
self.reported = set()
|
||||
@@ -15,14 +15,28 @@ class Reactor():
|
||||
self.tasked_num = tasked_num
|
||||
self.atoms_new = list()
|
||||
self.atoms_review = list()
|
||||
counter = self.tasked_num
|
||||
|
||||
electron_dict = {elect.content: elect for elect in electron_file.datalist}
|
||||
self.electron_dict = {elect.content: elect for elect in electron_file.datalist}
|
||||
|
||||
def electron_dict_get_fallback(key) -> pt.Electron:
|
||||
value = self.electron_dict.get(key)
|
||||
|
||||
# 如果值不存在,则设置默认值
|
||||
if value is None:
|
||||
value = pt.Electron(key, {}) # 获取默认值
|
||||
self.electron_dict[key] = value # 将默认值存入字典
|
||||
value = self.electron_dict[key]
|
||||
|
||||
return value # 返回获取的值(可能是默认值)
|
||||
|
||||
for nucleon in nucleon_file.datalist:
|
||||
atom = (electron_dict.get(nucleon_file, pt.Electron.placeholder()), nucleon)
|
||||
atom = (electron_dict_get_fallback(nucleon.content), nucleon)
|
||||
if atom[0].is_activated == 0:
|
||||
atom[0].is_activated = 1
|
||||
self.atoms_new.append(atom)
|
||||
if counter > 0:
|
||||
atom[0].is_activated = 1
|
||||
self.atoms_new.append(atom)
|
||||
counter -= 1
|
||||
else:
|
||||
if atom[0].next_date <= aux.get_daystamp():
|
||||
atom[0].last_date = aux.get_daystamp()
|
||||
@@ -81,7 +95,11 @@ class Reactor():
|
||||
|
||||
def save(self):
|
||||
print("Progress saved")
|
||||
self.nucleon_file.save()
|
||||
# self.nucleon_file.save()
|
||||
temp = list()
|
||||
for i in self.electron_dict.keys():
|
||||
temp.append(self.electron_dict[i])
|
||||
self.electron_file.datalist = temp
|
||||
self.electron_file.save()
|
||||
|
||||
def report(self, atom, quality):
|
||||
|
Reference in New Issue
Block a user