54 lines
9.3 KiB
Python
54 lines
9.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
import re, os
|
|
|
|
rr = re.compile(r'[\u4e00-\u9fff]')
|
|
D = '/app/working/workspaces/default/novels/round3/03-满级大佬回新手村'
|
|
|
|
def hz(s):
|
|
return len(rr.findall(s))
|
|
|
|
def ap(fn, txt):
|
|
p = os.path.join(D, fn)
|
|
with open(p, 'r', encoding='utf-8') as f:
|
|
c = f.read()
|
|
b = hz(c)
|
|
with open(p, 'a', encoding='utf-8') as f:
|
|
f.write('\n' + txt)
|
|
a = hz(c + '\n' + txt)
|
|
print(f' {fn}: {b} -> {a}')
|
|
|
|
# ch12 expand
|
|
ch12 = '''那天晚上我躺在床上——想了很多。温柔一刀——一个在游戏里认识不到一个月的人——我却为了他跑了医院——为了他安排了荣誉会员——为了他做了很多我以前不会做的事。这让我自己都觉得不可思议。但当我问自己后不后悔的时候——我的答案是——不后悔。\n\n因为在这个游戏里——能遇到一个愿意请你喝虚拟麦酒的人——比遇到一把好武器——更难得。武器可以再打——人可以再升级——但那种——在你在酒馆里发呆的时候——走过来把一杯麦酒放在你面前的人——你遇不到几个。\n\n我决定——从明天开始——用我的方式——让温柔一刀知道——他在这个游戏里不只是一个普通的玩家——他是一个被全服第一公会记住的人——他是一个被全服第一会长记住的人。\n\n第二天我上线的时候——发现我的私聊里有一条消息——是温柔一刀发来的——但时间是凌晨三点。他说——睡不着——在想游戏里的事——想到了你——想到了晨光村的酒馆——想到了那杯麦酒——然后觉得——活着挺好的。\n\n我看着那条消息——笑了一下。凌晨三点——一个刚做完手术的人在病床上——想着的是游戏里的朋友——想着的是晨光村的酒馆——想着的是一杯虚拟的麦酒。这个画面让我觉得很温暖——也很心酸。\n\n我回他——等你回来了——想喝几杯喝几杯——我请客。\n\n他第二天早上看到消息之后回了我——好——一言为定。\n\n温柔一刀出院那天——他给我发了一条消息——我出院了——明天上线。\n\\n我回他——好——明天晚上——老位置。\n\n那一天——我几乎一天都在想着怎么给他办一个特别的回归仪式。不是为了炫耀——是为了让他知道——这个世界——有一个人在等他回来。'''
|
|
ap('第012章 温柔一刀的秘密.md', ch12)
|
|
|
|
# ch13 expand
|
|
ch13 = '''我回到驻地的时候——剑指苍穹已经在公会大厅等着我了。他看着我走进来——说——会长——温柔一刀的荣誉会员任命已经通过了——你要不要亲自在全服频道上宣布?\n\n我想了想——不用——等他本人上线了再宣布——我要让他第一个看到。\n\n剑指苍穹点了点头——然后他说——会长——你变了。\n\n我——我知道。\n\n他——变好了。\n\n我——谢谢。\n\n那天晚上我没有刷怪——我去了晨光村——一个人坐在酒馆里——靠窗的老位置。面前摆着一杯麦酒——但我没有喝——我在等。等明天——等温柔一刀上线的那一刻。\n\n酒馆老板走过来——跟我说——你今天一个人?\n\n我——嗯——他在医院——明天回来。\n\n老板——那个经常跟你一起喝酒的?\n\n我——嗯。\n\n老板——他什么时候回来?\n\n我——明天。\n\n老板——那我明天多准备两杯麦酒——新鲜一点——算是送他的出院礼物。\n\\n我愣了一下——然后笑了——好——谢谢。\n\n老板转身走了。我坐在窗边——看着窗外的晨光村——月桂树在风里摇晃——新手玩家在街上跑着——一切都跟往常一样。但我知道——明天开始——一切都会不一样了——因为温柔一刀要回来了。\n\n那一杯麦酒——我在酒馆里坐到了凌晨。不是因为我无聊——是因为我想在这个位置上多坐一会儿——在温柔一刀回来之前——替他感受一下这个酒馆的安静。等他回来的时候——他就可以直接坐在这个位置上——开始享受他该享受的热闹了。'''
|
|
ap('第013章 暗夜的抉择.md', ch13)
|
|
|
|
# ch14 expand
|
|
ch14 = '''温柔一刀上线的时候——我正在龙骨荒野带小法师刷最后一个副本。系统提示——好友温柔一刀上线了。我看着那条提示——手上的动作停了一下——然后我对小法师说——今天的副本先到这里——我有事。\n\n小法师——什么事?\n\n我——一个朋友回来了——我要去接他。\n\n小法师——温柔一刀?\n\n我——嗯。\n\n小法师——那你去吧——我可以自己打。\n\n我笑了笑——然后传送到了晨光村。\n\n我到的时候——温柔一刀已经从复活点走过来了。他站在路上——看着我——夜神。\n\n我——温柔一刀——欢迎回来。\n\n他——谢谢——真的谢谢。\n\n我——走——带你去个地方。\n\n我带着他走进了晨光村的酒馆——靠窗的老位置——桌上摆着两杯麦酒——新鲜的——老板特意准备的。\n\n温柔一刀看着那两杯酒——愣住了——这是?\n\n我——老板听说你出院了——特意给你准备的——出院礼物。\n\n他沉默了很久——然后坐下来——拿起那杯酒——看着杯里的虚拟液体——我在医院里躺了一周——想了很多事——有些想明白了——有些没想明白——但我最想明白的一件事是——为什么你会为我做这些?\n\\n我——因为我无聊——但你的出现——让我的无聊——变得有意思了。\n\n他愣了一会儿——然后笑了——这个理由——很夜神。\n\n我举起杯子——敬无聊——敬你。\n\n他举起杯子——敬无聊——敬夜神——敬晨光村——敬这杯老板特意准备的麦酒。\n\n我们碰了一杯。那天晚上——我们在酒馆里坐了很久——像以前一样——但跟以前不同的是——我们之间不再有秘密了。他知道我是谁——我知道他是谁——我们是真正的朋友了。\n\n那天晚上之后——我在全服频道上发了一条消息——温柔一刀——暗夜第一个荣誉会员——欢迎回家。\n\n全服频道开始刷屏——「欢迎回家」「温柔一刀——全服第一公会的荣誉会员」「这个称号太有意义了」「夜神——你是不是喝多了?」「他不是喝多了——他是找到真正的朋友了」\n\n我看着那些消息——笑了。他们说的对——我确实找到了真正的朋友。'''
|
|
ap('第014章 王者归来.md', ch14)
|
|
|
|
# ch15 expand
|
|
ch15 = '''小法师60级的那天晚上——我带着他去打了一个高级副本——这是我第一次用大号带他打副本。他紧张得不行——一直问——夜哥——我不会拖后腿吧?\n\n我——不会——你比我当年厉害多了。\n\n他——真的吗?\n\n我——真的——我当年60级的时候——还没有你操作好。\n\n他——你骗我的吧?\n\n我——不骗——你是我见过的最有天赋的新人。\n\n副本打完之后——他在地上捡装备——兴奋地喊——爆了!爆了!紫色的!\n\n我看着他兴奋的样子——笑了。然后我打开装备分配——把所有装备都给了他。\n\n他——夜哥——你不要吗?\n\n我——不要——我用不上——你先用——以后你带新人的时候——可以用这些装备帮他们。\n\n他沉默了一会儿——然后说——夜哥——我一定会成为跟你一样的人。\n\n我——不——你要成为比我还好的人。\n\n那天晚上——我们三个人——我——温柔一刀——小法师——坐在晨光村的酒馆里。三杯麦酒摆在桌上——窗外是晨光村的夜景——月桂树在风里摇晃——NPC在收摊——新玩家在街上跑来跑去。\n\n温柔一刀举起杯子——敬这个游戏里最好的人。\n\n小法师举起杯子——敬带我从1级到60级的人。\n\n我举起杯子——敬那些——会在你装萌新的时候请你喝麦酒的人——敬那些——会在你住院的时候去医院看你的人——敬那些——会在你60级的时候为你高兴的人。\n\n我们碰了一杯。麦酒在虚拟的杯子里晃荡——但我们的心情——是真实的。\n\n这就是我在这个游戏里找到的最珍贵的东西。不是等级——不是装备——不是排名——是这两个人。\n\n一个在酒馆里请我喝麦酒的人——一个在龙骨荒野叫我夜哥的人。\n\n这两个人——让这个游戏——变成了我的世界。\n\n我不会再离开这个世界了。\n\n因为——有人在这里等我。\n\n(全书完)'''
|
|
ap('第015章 终章——所有普通玩家的故事.md', ch15)
|
|
|
|
print('\n=== 最终统计 ===')
|
|
ok = 0
|
|
need = 0
|
|
total = 0
|
|
for f in sorted(os.listdir(D)):
|
|
if not f.endswith('.md') or not f.startswith('第'):
|
|
continue
|
|
with open(os.path.join(D, f), 'r', encoding='utf-8') as fp:
|
|
h = hz(fp.read())
|
|
if h >= 2000:
|
|
flag = 'OK'
|
|
ok += 1
|
|
else:
|
|
flag = 'NEED'
|
|
need += 1
|
|
print(f' {flag} {f}: {h}')
|
|
total += h
|
|
avg = total // max(ok+need, 1)
|
|
print(f'\n达标: {ok}/{ok+need}, 总汉字数: {total}, 平均: {avg}/章') |