添加规划计算器实用程序, 并添加 shebang 和一些优化
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
import time
|
import time
|
||||||
import pathlib
|
import pathlib
|
||||||
import toml
|
import toml
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from textual.app import App, ComposeResult
|
from textual.app import App, ComposeResult
|
||||||
from textual.events import Event
|
from textual.events import Event
|
||||||
from textual.widgets import (
|
from textual.widgets import (
|
||||||
|
62
estimator.py
Normal file
62
estimator.py
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# 模拟规划完成所有记忆单元集文件的最小时间
|
||||||
|
import os
|
||||||
|
import particles as pt
|
||||||
|
import datetime
|
||||||
|
import pathlib
|
||||||
|
import math
|
||||||
|
|
||||||
|
MINIMAL_REPEATATION = 2
|
||||||
|
FILTER = "ALL"
|
||||||
|
WORST_EF = 5
|
||||||
|
PAYLOAD = 8
|
||||||
|
|
||||||
|
print("SM-2 任务预规划实用程序")
|
||||||
|
print(f"运行时刻: {datetime.datetime.now()}")
|
||||||
|
print(f" > 筛选器模式: {FILTER}")
|
||||||
|
print(f" > 最小重复次数设置: {MINIMAL_REPEATATION}")
|
||||||
|
print(f" > 最坏难度系数: {WORST_EF}")
|
||||||
|
print(f" > 单日单元负荷: {PAYLOAD}")
|
||||||
|
|
||||||
|
print("--------")
|
||||||
|
|
||||||
|
filelist = []
|
||||||
|
|
||||||
|
if FILTER == "ALL":
|
||||||
|
for i in os.listdir('./nucleon'):
|
||||||
|
if "toml" in i:
|
||||||
|
print("扫描到记忆单元集: " + i)
|
||||||
|
filelist.append(i)
|
||||||
|
print(f"共需记忆 {len(filelist)} 个记忆单元集")
|
||||||
|
else:
|
||||||
|
filelist = [FILTER]
|
||||||
|
|
||||||
|
print("--------")
|
||||||
|
time_counter = 0
|
||||||
|
text_counter = 0
|
||||||
|
content_counter = 0
|
||||||
|
for i in filelist:
|
||||||
|
print(f"处理: {i}")
|
||||||
|
nucu = pt.NucleonUnion(pathlib.Path("./nucleon/" + i))
|
||||||
|
print(f"记忆单元数: {len(nucu.nucleons)}")
|
||||||
|
content_cnt = 0
|
||||||
|
metadata_trsl_cnt = 0
|
||||||
|
metadata_note_cnt = 0
|
||||||
|
metadata_kwrd_cnt = 0
|
||||||
|
for i in nucu.nucleons:
|
||||||
|
content_cnt += len(i.content)
|
||||||
|
metadata_trsl_cnt += len(str(i.metadata["translation"]))
|
||||||
|
metadata_kwrd_cnt += len(str(i.metadata["keyword_note"]))
|
||||||
|
metadata_note_cnt += len(str(i.metadata["note"]))
|
||||||
|
print(" - 原文文字数: " + str(content_cnt))
|
||||||
|
metadata_cnt = metadata_kwrd_cnt + metadata_note_cnt + metadata_trsl_cnt
|
||||||
|
print(" - 元数据字数: " + str(metadata_cnt) + f"\n = {metadata_trsl_cnt}[翻译] + {metadata_kwrd_cnt}[关键词] + {metadata_note_cnt}[笔记]")
|
||||||
|
print(f" - 总文字数: {content_cnt + metadata_cnt}")
|
||||||
|
print(f"独占记忆时间: {len(nucu.nucleons) / PAYLOAD} -> {math.ceil(len(nucu.nucleons) / PAYLOAD)}")
|
||||||
|
text_counter += (content_cnt + metadata_cnt)
|
||||||
|
content_counter += content_cnt
|
||||||
|
time_counter += math.ceil(len(nucu.nucleons) / PAYLOAD)
|
||||||
|
print("--------")
|
||||||
|
for i in range(MINIMAL_REPEATATION):
|
||||||
|
print(f"若按计划进行, 最长需要 {time_counter + (i + 1) * 6} 天完成全部内容的第 {i + 1} 次记忆")
|
||||||
|
print(f"规划包含 {content_counter} 字, 附加了 {text_counter - content_counter} 字的元数据内容, 共计 {text_counter} 字")
|
1
main.py
1
main.py
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from textual.app import App
|
from textual.app import App
|
||||||
import screens
|
import screens
|
||||||
import os
|
import os
|
||||||
|
@@ -1,2 +1,3 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
ver = "0.3.7"
|
ver = "0.3.7"
|
||||||
stage = "prototype"
|
stage = "prototype"
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
import pathlib
|
import pathlib
|
||||||
import toml
|
import toml
|
||||||
import time
|
import time
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
# 音频预缓存实用程序, 独立于主程序之外, 但依赖其他组件
|
# 音频预缓存实用程序, 独立于主程序之外, 但依赖其他组件
|
||||||
import particles as pt
|
import particles as pt
|
||||||
import auxiliary as aux
|
import auxiliary as aux
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
import random
|
import random
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
import typing
|
import typing
|
||||||
import particles as pt
|
import particles as pt
|
||||||
import pathlib
|
import pathlib
|
||||||
|
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from textual.app import App, ComposeResult
|
from textual.app import App, ComposeResult
|
||||||
from textual.widgets import (
|
from textual.widgets import (
|
||||||
Header,
|
Header,
|
||||||
|
1
serve.py
1
serve.py
@@ -1,3 +1,4 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
from webshare import server
|
from webshare import server
|
||||||
server = server.Server("python3 main.py", title="辅助记忆程序", host="0.0.0.0")
|
server = server.Server("python3 main.py", title="辅助记忆程序", host="0.0.0.0")
|
||||||
server.serve()
|
server.serve()
|
||||||
|
Reference in New Issue
Block a user