# -*- coding: utf-8 -*- """导出:16位数学家人物小传 + 四线剧本大纲 → Word 文档""" from docx import Document from docx.shared import Pt, Inches, Cm, RGBColor from docx.enum.text import WD_ALIGN_PARAGRAPH from docx.oxml.ns import qn import os doc = Document() # ── 全局样式 ── style = doc.styles['Normal'] font = style.font font.name = '微软雅黑' font.size = Pt(11) style.element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') for level in [1,2,3]: hs = doc.styles[f'Heading {level}'] hs.font.color.rgb = RGBColor(0x1E, 0x29, 0x3B) hs.element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') def h1(text): doc.add_heading(text, level=1) def h2(text): doc.add_heading(text, level=2) def h3(text): doc.add_heading(text, level=3) def p(text, bold=False): par = doc.add_paragraph() run = par.add_run(text) run.bold = bold run.font.size = Pt(11) run.font.name = '微软雅黑' run._element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') return par def bio(name, years, desc): h3(f'{name}({years})') p(desc) def divider(): doc.add_paragraph('─' * 40) # ======================== # 封面 # ======================== doc.add_paragraph() title = doc.add_paragraph() title.alignment = WD_ALIGN_PARAGRAPH.CENTER run = title.add_run('万理之城 · 设定圣经') run.font.size = Pt(26) run.bold = True run.font.color.rgb = RGBColor(0x5B, 0x6A, 0xF0) run.font.name = '微软雅黑' run._element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') sub = doc.add_paragraph() sub.alignment = WD_ALIGN_PARAGRAPH.CENTER run2 = sub.add_run('数学脑 · MathBTI 文游剧本\n16 位数学家人物小传 & 四条线剧本大纲\n\n2026.07') run2.font.size = Pt(13) run2.font.color.rgb = RGBColor(0x64, 0x74, 0x8B) run2.font.name = '微软雅黑' run2._element.rPr.rFonts.set(qn('w:eastAsia'), '微软雅黑') doc.add_page_break() # ======================== # 目录 # ======================== h1('目录') p('第一部分:世界观概述') p('第二部分:四族谱系总览') p('第三部分:16 位数学家人物小传') p(' · 精算师族(祖冲之 / 欧拉 / 高斯 / 诺特)') p(' · 传播者族(斐波那契 / 华罗庚 / 伽罗瓦 / Ada Lovelace)') p(' · 应用者族(秦九韶 / 牛顿 / 图灵 / 冯·诺依曼)') p(' · 直觉者族(希帕提娅 / 赵爽 / 庞加莱 / 凯瑟琳·约翰逊)') p('第四部分:四条线剧本大纲') doc.add_page_break() # ======================== # 第一部分:世界观概述 # ======================== h1('第一部分:世界观概述') h2('一、核心高概念') p('每当人类世界有人证明了足够重要的数学真理,TA 就会在一座由真理构筑的城中醒来。而每当人类开始遗忘"人为什么要学数学",城就开始崩塌。') p('万理之城 = 数学脑 App 的元世界观。MathBTI 测试 = 召唤仪式。玩家做完测试,分入四条线之一——每条线由四位跨越时代的数学家陪伴,共同面对"裂缝":AI 时代下"数学已死"的论断,正在吞噬这座城。') h2('二、世界规则') p('• 以真理建城:每条被证明的定理在城中对应一栋建筑、一条街或一座桥。勾股定理是广场,微积分是贯穿全城的高架,π 是覆盖全城的星光。') p('• 以记忆续命:当人类世界持续使用某个定理,它在城中的建筑就屹立不倒;当最后一个人类遗忘某个定理,对应建筑崩塌,居民消散。') p('• 未证明的猜想是城外迷雾中的荒野——那是城市永远在向外生长的方向。') p('• 城民以最好的年纪复活,保留生前全部记忆与执念。') h2('三、裂缝:共同危机') p('裂缝 = 人间正在蔓延的一句论断:"AI 都能做数学了,人还学数学干什么?"每多一个人类相信这句话,万理之城就崩塌一块。裂缝按概念吞噬:先吞"直觉",再吞"耐心",再吞"想象",最后逼近"记忆"。') p('四位数学家对裂缝的四种回应,就是你对"AI 时代人为什么仍要学数学"的四种论证。') h2('四、主角设定') p('你是一名大一新生。高数课听不懂,期中考试挂科,刷到"AI 要取代数学家"的新闻——你开始怀疑:学数学到底有什么用?某天你做了 MathBTI 测试,当晚入睡后,你来到了万理之城。') p('双线结构:白天是大学现实线(宿舍/教室/图书馆/社团),夜晚是梦境线(万理之城)。现实中你遇到的困境 → 当晚在城中得到映照 → 次日醒来,你改变了现实中的某个选择。') h2('五、图灵:隐藏层') p('图灵是万理之城的"地基裂缝"——他1936年证明了"存在不可计算的函数",这个定理本身就在城的根基里开了一道口子。他不作为个人线主角,而是真相线的核心NPC:四线通关后,玩家发现,裂缝的存在,正是从他证明了"不可计算性"那一刻就注定的。') doc.add_page_break() # ======================== # 第二部分:四族谱系 # ======================== h1('第二部分:四族谱系总览') clans = [ ('精算师族(信仰者)', '严谨 + 推演 = 为数学而数学', '祖冲之 / 欧拉 / 高斯 / 诺特', '"这个定理有用吗?" → 数学本身就是目的,不为名不为利,只为真理本身。', '#4A90D9'), ('传播者族(传播者)', '严谨 + 算账 = 把数学讲出去', '斐波那契 / 华罗庚 / 伽罗瓦 / Ada Lovelace', '"我讲的没人懂" → 数学是语言,要翻译给不懂数学的世界。', '#D4A574'), ('应用者族(应用者)', '直觉 + 算账 = 用数学改变世界', '秦九韶 / 牛顿 / 图灵 / 冯·诺依曼', '"我可以用数学做恶吗?" → 数学是力量,选择怎么用是你的责任。', '#3A6B8C'), ('直觉者族(直觉者)', '直觉 + 推演 = 看见别人看不见的东西', '希帕提娅 / 赵爽 / 庞加莱 / 凯瑟琳·约翰逊', '"你怎么证明直觉是对的?" → 直觉不是天赋,是看了很多之后自然长出来的。', '#7C5CBF'), ] for name, formula, members, theme, color in clans: h2(name) p(f'气质公式:{formula}', bold=True) p(f'成员:{members}') p(f'核心困境:{theme}') p('') p('国籍分布:中国 5 人(祖冲之、华罗庚、秦九韶、赵爽、凯瑟琳为华裔?——更正:凯瑟琳为美国非裔),外国 11 人。') p('时代跨度:公元 3 世纪(赵爽)至 2020 年(凯瑟琳),约 1700 年。') p('性别分布:诺特、Ada Lovelace、希帕提娅、凯瑟琳·约翰逊 4 位女性,占 25%。') doc.add_page_break() # ======================== # 第三部分:16位小传 # ======================== h1('第三部分:16 位数学家人物小传') # ── 精算师族 ── h2('一、精算师族(严谨 + 推演)——"数学本身就是目的"') p('族群画像:他们学数学不是因为"有用",而是因为"美"。他们愿意花一辈子去证明一个可能永远没人用的定理,因为那个定理本身就是真理的一部分。他们是数学系里"为数学而数学"的人——不关心就业,不关心竞赛,只关心那个定理是不是真的、是不是美的。') bio('祖冲之', '429—500 · 南朝 · 中国', '他用算筹在乱世里算 π 算到第七位——不是为了名(生前无人理解),不是为了利(《缀术》失传),就是觉得"这个数字必须算到最准"。他造《大明历》,第一次把"岁差"引入历法,测得回归年365.2428天,与现代值只差46秒。权臣戴法兴当庭发难,他写下《驳议》逐条回敬——那是中国科学史上最硬气的一场辩论。他还造指南车、水碓磨、日行百里的千里船。所著《缀术》被列为唐代国子监最高级算学教材,可惜后世失传。儿子祖暅承其衣钵,父子两代人把一件事磨到了极境。他的气质:不呐喊、不好斗,一生只磨一件事——在一个人人速朽的乱世里,他用最慢的方式赢得了最长的时间。') bio('欧拉', '1707—1783 · 瑞士 / 圣彼得堡 / 柏林', '他是史上最高产的数学家:886篇论著,全集出齐要80多卷。今天每个学生写的f(x)、e、i、π、Σ,都是他定下的语言。他解了柯尼斯堡七桥,顺手发明了图论。1735年右眼失明,他自嘲:"从此干扰少了,我能更专心。"1771年左眼也失明,同年圣彼得堡大火,失明的老人被仆人从火场背出,手稿化为灰烬。他拍拍灰说:"我们重新开始。"此后17年,他全凭心算口述,由子女和学生笔录——产量反而翻倍。1783年9月18日下午,他陪孙女喝茶,计算了天王星的轨道,晚间笔落,说一句"我要死了",应声而逝。他的气质:温厚、坚韧、永远在给予。失明的设定在视觉小说里有天然的演出张力——画面渐黑,而推导声不停。') bio('高斯', '1777—1855 · 德国 · 哥廷根', '他是"数学王子":3岁纠正父亲的工资计算,10岁一秒算出1到100的和。19岁那年,他证明了正十七边形可以用尺规作图——这是自欧几里得以来两千年间几何学的最大突破。24岁出版《算术研究》,奠定现代数论。但他给自己立了一条铁律:不成熟、不完美、不发表。他发现了非欧几何,锁在抽屉里五十年;他算了无数公式,只在确信"已被压缩到最简"时才付印。他一生节俭、沉默、严厉。1855年他在哥廷根去世,墓碑上只有一个正十七边形——那是他19岁的骄傲,也是他一生"完美主义"的起点与终点。他的气质:严苛、孤傲、追求绝对完美。别人写十篇,他写一篇,但这一篇能压死人。') bio('诺特', '1882—1935 · 德国 · 哥廷根', '她是埃尔朗根的数学家之女,23岁偏了航,决定学数学。彼时德国大学不许女生正式注册,她以旁听生身份蹭完全部课程,硬是拿下博士学位。1915年,希尔伯特把她请到哥廷根。她一到,就为广义相对论补上了最关键的基石——诺特定理:每一种连续对称都对应一条守恒律。但因为性别,她连无薪讲师的资格都拿不到,希尔伯特在评议会上拍桌:"这里是大学,不是澡堂!"此后十几年,她免费开课,亲手开创了"抽象代数",弟子遍布世界。1933年纳粹上台,犹太血统的她被逐出大学,流亡美国。1935年因手术并发症去世,年仅53岁。爱因斯坦在讣告里写道:"自女性开始接受高等教育以来,她是迄今最杰出的数学天才。"她的气质:温和外表下的钢铁——一生被时代拒绝了三次,每一次她都用数学回应。') doc.add_page_break() # ── 传播者族 ── h2('二、传播者族(严谨 + 算账)——"数学是讲出去的"') p('族群画像:他们学数学不是为了"自己懂",而是为了"让别人也懂"。他们相信数学不属于象牙塔,属于每一个人。他们是数学系里"最会说话"的那群人——以后可能成为科普作家、数学老师、教育博主。') bio('斐波那契', '1170—1250 · 意大利 · 比萨', '他是比萨商人之子,少年时随父亲到北非经商,在那里第一次见到了阿拉伯数字。他花了十几年游历地中海,1202年写成《算盘书》——向欧洲介绍了0、分数、负数、利息计算,还有"兔子繁殖问题"。这本书改变了欧洲商业史:银行家开始用它记账,商人用它算利润,意大利成为欧洲金融中心。但他生前并未因此暴富——他只是个"会算数的商人",晚年才得到一笔象征性年金。他的气质:务实、耐心、跨越文化的桥梁。他不追求纯数学的荣耀,只在乎"让所有人都能算"。') bio('华罗庚', '1910—1985 · 中国', '他是金坛杂货铺的三子,初中毕业就辍学,左腿因小儿麻痹终身不愈。他蹲在柜台后算代数,被退稿无数。1930年一篇短文被清华算学系主任熊庆来识出天才,他被蛮横地拽进了中国最高学府。哈代问他要不要读博,他答:"我来是为学问,不是为学位。"解放后,他做了一件任何数学家都没做过的事:揣着粉笔走下大学讲台,走遍23个省市的工厂、矿山、田间——给工人农民演示"优选法"和"统筹法"。1985年他在东京大学做完学术报告,心脏病发,倒在讲台上。他说的最后一句话是:"我要工作到生命的最后一刻。"他的气质:泥土里的星辰——他不属于殿堂,他属于人间。') bio('伽罗瓦', '1811—1832 · 法国 · 巴黎', '他是巴黎郊区的天才少年,论文两次被柯西和傅里叶弄丢,两次报考巴黎综合理工学院落榜。他转向政治,加入共和派秘密组织,两次入狱。1832年5月29日,决斗前夜——他知道自己必死。他通宵写信给友人,在信纸边缘疯狂写道"我没有时间了",把毕生关于方程可解性的想法倾泻而出:这就是群论的雏形。次日在决斗中腹部中弹,5月31日去世,年仅20岁。那封信被弟弟保存了14年,直到1846年被刘维尔发现——数学界震惊了。今天,"伽罗瓦理论"是每个数学系研究生的必修课。他的气质:浪漫、激烈、视死如归。他是四人中唯一"死于数学之外"的人——但他用数学战胜了死亡:他死了,群论活了。') bio('Ada Lovelace', '1815—1852 · 英国 · 伦敦', '她是拜伦勋爵之女,出生5周后父母离异。母亲痛恨拜伦的"疯狂诗人基因",强迫她从小学习数学和逻辑。17岁她遇见巴贝奇,后者正在设计"分析机"——人类第一台通用计算机的图纸。1843年,她翻译了一篇关于分析机的论文,并加上了自己写的三万字注释。在注释里,她写下了人类历史上第一个算法——计算伯努利数的程序。更重要的是她写道:"这台机器不止能算数——它能织出花纹、能谱写乐曲、能处理任何可以用符号表达的东西。"她预见了通用计算机的全部潜力,比图灵早了一百年。1852年她死于宫颈癌,年仅36岁——和拜伦死时同岁。一百年后人们称她为"世界上第一位程序员"。她的气质:理性与浪漫的混血——她用数学驯服拜伦留给她的"疯狂",最终在数学里找到了比诗歌更狂野的想象。') doc.add_page_break() # ── 应用者族 ── h2('三、应用者族(直觉 + 算账)——"数学是力量"') p('族群画像:他们学数学不是为了"美",也不是为了"传播",而是为了"用"。他们相信数学的价值在于解决真实世界的问题。他们是数学系里"搞竞赛搞科研"的那群人——以后可能成为算法工程师、量化分析师、AI研究员。') bio('秦九韶', '1208—1268 · 南宋 · 中国', '他是南宋全才——精音律、善诗文、懂建筑、会带兵。1247年写成《数书九章》,提出大衍求一术(中国剩余定理),比高斯早五百多年;还发明了高次方程数值解法(秦九韶算法),至今是计算机数值计算的标准算法。但此人绝非书斋学者——史载其"性机巧、好奢侈",曾毒杀亲信,数学是他权力的延伸。正史对他的评价分裂得惊人:数学家说他空前绝后,史官说他品行不端。晚年被贬到广东梅州,1268年死于任上。他的气质:天才枭雄——数学是他的刀,他用这把刀平叛,也用这把刀杀人。你无法原谅他的手,但你无法否认他的天才。') bio('牛顿', '1643—1727 · 英国 · 林肯郡 / 剑桥', '他是遗腹子,三岁被母亲丢下改嫁——孤独是他的第一门语言。1665年剑桥因瘟疫封校,他回乡18个月,史称"奇迹年":微积分、光的色散、万有引力,三大发现全在乡下农舍桌上发芽。1687年《自然哲学的数学原理》出版,人类第一次用三条定律统一了天与地。但他的一生同样写满争斗:与胡克交恶,那句"站在巨人的肩膀上"是暗讽胡克驼背矮小;与莱布尼茨争微积分优先权,他幕后操纵皇家学会"调查"自己,判自己胜诉。晚年担任造币厂厂长,以数学家的缜密追剿假币犯,把数十人送上绞架;夜深人静时沉迷炼金术与末日预言。他终身未娶,几乎无友。84岁葬于威斯敏斯特。他的气质:神性与兽性同体一具肉身——他证明了宇宙的统一,却统一不了自己。') bio('图灵', '1912—1954 · 英国 · 剑桥 / 布莱切利园', '他是剑桥国王学院的天才,24岁发表《论可计算数》,定义了"计算"本身。二战爆发,他进入布莱切利园,领衔破解德军Enigma密码机,日破密电三千条,让欧洲战场提前两年结束,拯救上千万生命——这一切作为国家机密封存了三十年。战后他设计ACE计算机;1950年发表《计算机器与智能》,提出"机器能思考吗",为AI时代写下序言。他还是马拉松好手,最好成绩距奥运选拔线仅11分钟。1952年因同性恋身份被控"严重猥亵",被迫接受化学阉割。1954年6月死于寓所,床头一只咬过的氰化物苹果,年仅41岁。2013年英国女王颁布皇家赦免;2021年,他的头像登上了50英镑纸币。他的气质:纯粹、木讷、不善言辞——脑中只有问题本身。他拯救了世界,世界把他碾碎。') bio('冯·诺依曼', '1903—1957 · 匈牙利 / 美国', '他是布达佩斯的银行家之子,8岁掌握微积分,12岁读懂博雷尔的《函数论》。22岁拿下博士学位,1930年移居普林斯顿。他的贡献横跨七个领域:量子力学的数学基础、算子代数、博弈论(《博弈论与经济行为》是冷战的战略圣经)、计算机架构(冯·诺依曼结构,今天所有电脑都按他的图纸造)、原子弹(曼哈顿计划的内爆透镜计算)、蒙特卡洛方法、细胞自动机。但私下里,他是派对的灵魂——讲黄色笑话、开快车(车祸无数)、打牌必赢(因为他真的在算概率)。1957年死于骨癌,年仅53岁。临终前对神父说:"我算了一辈子,但我算不出我自己的死期。"他的气质:全才、痞气、冷酷与幽默并存——数学对他不是信仰,是工具;世界对他不是谜题,是棋盘。') doc.add_page_break() # ── 直觉者族 ── h2('四、直觉者族(直觉 + 推演)——"数学是看见别人看不见的东西"') p('族群画像:他们学数学不靠"算",靠"看"。他们在数学系里是最容易被误解的一群人:考试不一定最高分,但总能提出别人想不到的问题。他们做题不靠步骤,靠"感觉"。他们最擅长把不同领域的东西连在一起——用几何理解代数、用物理直觉理解方程。') bio('希帕提娅', '约355—415 · 埃及 · 亚历山大港', '她是历史上第一位有记载的女数学家,父亲塞翁是最后一位大数学家。她从小接受最好的教育——数学、哲学、天文学、修辞学。成年后她成为亚历山大博物院的教师,学生从地中海各地涌来,包括后来的叙利亚大主教。她注释了《圆锥曲线论》《算术》《天文学大成》,改进了星盘和比重计。但她生在一个危险的时代:罗马帝国基督教化,异教学术被视为威胁。415年3月,一群基督徒暴民在主教西里尔默许下,把她从马车上拖下来,用牡蛎壳把她的肉一片片割下,然后焚烧尸体。她的死标志着古典希腊数学的终结——此后一千年,欧洲进入黑暗时代。她的气质:优雅、坚定、殉道者。她不死于数学,死于"数学代表的那个世界"。') bio('赵爽', '约3世纪 · 三国 · 吴国', '他是三国时期吴国的数学家,生平几乎无记载——他只留下一部《周髀算经注》。但这部注释里有一张图,改变了中国数学史:弦图。这张图用一个正方形和四个直角三角形,直观地"看见"了勾股定理——不需要推导,看一眼就懂。这是中国数学史上最早的无字证明。他在注释里写道:"按弦图,又可以勾股相乘为朱实二,倍之为朱实四,以勾股之差自相乘为中黄实,加差实,亦成弦实。"他用颜色和形状替代了符号和逻辑。他可能是个小官,可能是个民间学者——但他的弦图流传了一千八百年,2002年国际数学家大会的会徽就是这张图。他的气质:简约、直观、无名者。他是四人中最不起眼的一个——但他的一张图,比别人的十本书都长寿。') bio('庞加莱', '1854—1912 · 法国 · 南锡 / 巴黎', '他是法国南锡的富家子弟,从小体弱多病、视力极差,但记忆力惊人——据说能记住整本书的页码。1881年他27岁,在诺曼底度假时踏上公交车踏板的一瞬间,突然"看见"了富克斯函数的变换性质——他后来写道:"我一踩上车,答案就来了,仿佛有人在我耳边低语。"这次顿悟开创了自守函数理论。此后三十年他横扫数学的每一个领域:拓扑学(他发明了这门学科)、微分方程、天体力学(三体问题的定性分析,混沌理论的先声)。他写下500多篇论文、30多部专著,被称为"最后一位通晓当时所有数学分支的人"。1904年他提出庞加莱猜想——这个猜想困扰了数学家整整一百年,直到2003年才被佩雷尔曼证明。1912年因前列腺癌手术并发症去世,年仅58岁。他的气质:全才、直觉、优雅——他是理性时代的最后贵族,在他之后,再也没有人能"通晓一切"。') bio('凯瑟琳·约翰逊', '1918—2020 · 美国 · 西弗吉尼亚 / NASA', '她是西弗吉尼亚的黑人女孩,10岁上高中,18岁以最高荣誉拿下数学学位。但种族隔离的年代,没有实验室会聘用黑人女数学家。她当了十年教师,直到1953年进入NASA兰利研究中心的"西区计算组"——一屋子黑人女性用纸笔手算弹道,门上贴着"有色人种专用"。她假装没看见,埋头算数据,直到被借调进飞行研究部——全白人男性的那间屋,她是走进去的第一个女人。1962年,宇航员约翰·格伦临发射前点名:"让那个女孩核对数字——她说行,我就飞。"凯瑟琳算了一整天,格伦绕地球三圈活着回来。1969年阿波罗11号登月的轨道,核心计算出自她的手。她在NASA工作了33年,参与26次太空任务。2015年98岁的她接过总统自由勋章;2020年101岁辞世。从"有色人种计算员"到登月轨道计算者,她的一生恰好是计算从纸笔走向AI的整个世纪。她的气质:最安静的斗士——她不砸墙,只把门推开一条缝,直到整面墙自己倒掉。') doc.add_page_break() # ======================== # 第四部分:剧本大纲 # ======================== h1('第四部分:四条线剧本大纲') h2('总体框架') p('主角:大一新生,数学迷茫期,做完MathBTI后被分入某条线') p('结构:四幕 × 双线(现实线 / 梦境线)') p('核心机制:现实中的困境 → 梦境中得到映照 → 次日现实中改变选择') h2('共通序章(所有线共享)') p('现实线:你是数学系大一新生。高数期中58分。室友说"数学系是给天才读的,咱们趁早转专业"。你刷到新闻"AI要取代数学家"。晚上你在宿舍做MathBTI——16种人格,你会是哪一个?') p('梦境线:做完测试当晚,你在梦里来到了万理之城。四位坊主在城门口等你。你的测试结果决定了你首先敲开哪一扇门。') doc.add_page_break() # ── 线一 ── h2('线一:精算师路线(严谨 + 推演)——"数学本身就是目的"') h3('第一幕:迷茫(现实:高数挂科)') p('现实:期中高数58分。室友建议转专业。你在图书馆刷题,一道极限题算了三遍三个答案。') p('梦境:祖冲之在城门口等你,手里握着算筹。他带你走城墙——每天黎明他都要绕一圈,用算筹复核π的刻度,九百年从未间断。"π小数点后第七位是多少?""不知道。""我知道——因为我算了一辈子。"') p('抉择:祖冲之问:"你觉得数学是算出来的,还是背出来的?"') h3('第二幕:探索(现实:图书馆苦修)') p('现实:你决定再试一次,每天去图书馆刷题。进度缓慢。新闻推送"AI一秒解出高考数学压轴题",你动摇。') p('梦境:祖冲之带你去见欧拉——双目失明,但口述论文语速比书记员还快。"我失明了反而算得更快。"高斯路过:"他写太多了,十篇只有一篇是完美的。"欧拉笑:"但那十篇藏着一百个灵感。"') p('抉择:欧拉问:"你想写十篇普通论文,还是一篇完美论文?"') h3('第三幕:危机(现实:AI冲击)') p('现实:新闻"AI证明了一个新的数学定理",评论区"数学家要失业了"。你怀疑人还能比AI算得快吗。') p('梦境:裂缝出现——先吞"直觉",再吞"耐心"。祖冲之的π刻度开始错位,欧拉的手稿模糊。诺特说:"裂缝不是因为AI太快,是因为你们开始相信'快就是一切'。"') p('抉择:诺特问:"你学数学,是为了比AI快,还是为了比昨天的自己更准?"') h3('第四幕:觉醒(现实:找到节奏)') p('现实:你不再追求刷题速度,每题算到"我确信这个答案是对的"才翻页。期末考试82分,不是全班最高,但每一题你都"算透了"。') p('梦境:裂缝暂时稳定——因为人间多了一个"愿意慢慢算"的人。祖冲之把算筹递给你:"记住——数学是算出来的,不是背出来的。"你醒来,枕边纸条写着:π=3.1415926……') p('真谛:数学之用,在于"精确"本身——AI可以比你快,但只有你能决定"算到什么程度才算对"。这是人的尊严,也是数学的尊严。') doc.add_page_break() # ── 线二 ── h2('线二:传播者路线(严谨 + 算账)——"数学是讲出去的"') h3('第一幕:迷茫(现实:社团选择)') p('现实:你是"数学系最会说话的人"。纠结加入数学建模协会还是科普社。') p('梦境:华罗庚在勾股广场摆摊拉你演示优选法:"0.618法——烤烟叶、炼钢、找对象都能用!"他带你走街串巷,城里每个居民都认识他。"数学不是给天才的,是给所有人的。"') p('抉择:华罗庚问:"你觉得数学是用来自己爽的,还是用来帮别人的?"') h3('第二幕:探索(现实:科普社试讲)') p('现实:第一次给初中生讲"斐波那契数列",台下睡倒一片。你怀疑:是不是我讲得太烂?') p('梦境:华罗庚带你去见斐波那契。"我花了二十年才让欧洲人从罗马数字换成阿拉伯数字——你讲一节课就想让所有人听懂?"伽罗瓦冷笑:"我讲了一辈子,没人听懂。决斗前夜写了一封信,十四年后才被读懂。"Ada温柔地说:"我把数学讲给机器听,等了一百年,机器才听懂。"') p('抉择:伽罗瓦问:"你想讲给现在的人听,还是讲给未来的人听?"') h3('第三幕:危机(现实:AI视频冲击)') p('现实:科普社面临解散,"现在中学生都看AI讲数学的视频"。你刷到AI的"三分钟讲完微积分",播放量百万。') p('梦境:裂缝出现——华罗庚的摊位没人来了。Ada说:"裂缝不是因为AI讲得快,是因为你们开始相信'快就是好'。"') p('抉择:Ada问:"你讲数学,是为了让人听懂,还是为了让人记住?"') h3('第四幕:觉醒(现实:找到方式)') p('现实:你改变策略——不讲"三分钟速成",而讲"一个数学家的故事"。你讲了伽罗瓦决斗前夜写群论的故事,台下鸦雀无声。讲座结束,一个初中生跑来问:"姐姐,我也想学数学,还来得及吗?""来得及——伽罗瓦20岁才写群论。"科普社活了。') p('梦境:华罗庚把粉笔递给你:"数学是讲出去的,不是藏在论文里的。"你醒来,手机推送"讲座视频播放量破万"。') p('真谛:数学之用,在于"传承"本身——AI可以比你快,但只有你能决定"讲给谁听、讲到什么程度"。这是人的温度,也是数学的温度。') doc.add_page_break() # ── 线三 ── h2('线三:应用者路线(直觉 + 算账)——"数学是力量"') h3('第一幕:迷茫(现实:竞赛选拔)') p('现实:你高数成绩顶尖,室友说你"太卷了"。纠结全国数学竞赛还是数学建模竞赛。') p('梦境:冯·诺依曼在酒馆打牌,每把必赢:"我不是运气好,我在算概率。"他带你去见秦九韶——正在用算筹排兵布阵:"数学是刀,我用它平过叛乱。"牛顿在高塔上冷冷看着你:"你想赢?那你准备好付出代价了吗?"') p('抉择:秦九韶问:"你觉得数学是用来赢的,还是用来对的?"') h3('第二幕:探索(现实:竞赛备战)') p('现实:你同时参加两个竞赛,刷题到凌晨。建模竞赛组队时和队友吵翻——你想用"最优解",队友想用"可行解"。') p('梦境:图灵正在布莱切利园破译Enigma密码。"我每破一条密电就救一千条命——但没人知道是我破的,这是国家机密。"冯·诺依曼:"我帮美国算原子弹、帮五角大楼算冷战策略——我从不隐藏我在用数学赢。"') p('抉择:图灵问:"你赢了之后,是想被记住,还是想被忘记?"') h3('第三幕:危机(现实:AI竞赛冲击)') p('现实:数学竞赛省二等奖,建模竞赛因队内矛盾没拿到奖。新闻"AI组队参加数学建模竞赛拿了特等奖"。') p('梦境:裂缝出现——冯·诺依曼的牌局开始输,图灵的Bombe机卡壳。牛顿从高塔下来:"裂缝不是因为AI算得快,是因为你们开始相信'赢就是一切'。"') p('抉择:牛顿问:"你学数学,是为了赢别人,还是为了赢自己?"') h3('第四幕:觉醒(现实:重新定义"赢")') p('现实:你不再为拿奖而竞赛,而是为了"解决问题"。和队友和解重新组队,方案被一家物流公司采用——每年省了十万块。你写日记:"数学不是为了赢别人,是为了赢问题。"') p('梦境:裂缝暂时稳定。冯·诺依曼把牌递给你:"数学是力量,但力量不是为了赢,是为了保护你想保护的东西。"你醒来,消息推送"你们的建模方案被企业采纳"。') p('真谛:数学之用,在于"解决问题"本身——AI可以比你快,但只有你能决定"用数学解决什么问题"。这是人的选择,也是数学的选择。') doc.add_page_break() # ── 线四 ── h2('线四:直觉者路线(直觉 + 推演)——"数学是看见别人看不见的东西"') h3('第一幕:迷茫(现实:方向选择)') p('现实:你做题靠刷不靠"顿悟",总觉得自己不是天才型。纠结纯数学方向还是应用数学方向。') p('梦境:赵爽在画一张图——正方形、四个直角三角形、中间一个黄色小正方形。他指着图:"看,勾股定理。""我看不懂推导。""不需要推导——看就懂了。"希帕提娅路过:"我也是这么看数学的——在几何图形里看见永恒。"') p('抉择:赵爽问:"你觉得数学是算出来的,还是看出来的?"') h3('第二幕:探索(现实:选修课探索)') p('现实:你选修"数学之美"通识课——庞加莱猜想、费马大定理、黎曼猜想,云里雾里但被深深吸引。你怀疑:非天才能学纯数学吗?') p('梦境:庞加莱正散步:"我最好的想法都是在走路时冒出来的。踏上公交车踏板那一瞬间,看见了富克斯函数。不是算出来的,是看见的。"凯瑟琳说:"我不是天才,我只是算了33年,算到直觉成了本能。"') p('抉择:庞加莱问:"你想成为天才,还是想成为专家?"') h3('第三幕:危机(现实:AI直觉冲击)') p('现实:新闻"DeepMind的AI用直觉发现了新的数学猜想",评论区"AI连直觉都有了"。') p('梦境:裂缝出现——赵爽的弦图开始模糊,庞加莱灵感枯竭。凯瑟琳说:"裂缝不是因为AI有直觉,是因为你们开始相信'直觉是天赋不是努力'。"') p('抉择:凯瑟琳问:"你觉得直觉是天生的,还是练出来的?"') h3('第四幕:觉醒(现实:找到节奏)') p('现实:你选应用数学方向——不是因为"不够天才",而是因为"喜欢用数学解决真实问题"。统计课上用赵爽的弦图思维画了数据可视化图,老师说"这是我见过最直观的展示"。你写日记:"直觉不是天赋——是看了很多算了很多之后,自然长出来的。"') p('梦境:裂缝暂时稳定。赵爽把弦图递给你:"数学是看见别人看不见的东西——但看见之前,你得先看够一百张图。"你醒来,教推送"你的数据可视化作业被老师推荐参加校赛"。') p('真谛:数学之用,在于"看见"本身——AI可以比你快,但只有你能决定"看见什么、怎么看"。这是人的想象,也是数学的想象。') doc.add_page_break() # ======================== # 附录:四线对照表 # ======================== h1('附录:四线核心抉择对照表') table = doc.add_table(rows=6, cols=5) table.style = 'Light Grid Accent 1' headers = ['线', '第一幕', '第二幕', '第三幕', '第四幕真谛'] for i, h in enumerate(headers): cell = table.rows[0].cells[i] cell.text = h for p in cell.paragraphs: for run in p.runs: run.bold = True data = [ ['精算师', '数学是算出来的还是背出来的?', '写十篇还一篇完美?', '比AI快还是比自己准?', '数学是"精确"的尊严'], ['传播者', '数学是自己爽还是帮别人?', '讲给现在的人还是未来?', '让人听懂还是记住?', '数学是"传承"的温度'], ['应用者', '数学是用来赢还是用来对?', '赢了被记住还是被忘记?', '赢别人还是赢自己?', '数学是"解决问题"的选择'], ['直觉者', '数学是算出来还是看出来?', '成为天才还是专家?', '直觉天生还是练出来的?', '数学是"看见"的想象'], ] for ri, row_data in enumerate(data): for ci, text in enumerate(row_data): table.rows[ri+1].cells[ci].text = text # ── 保存 ── out = os.path.join(os.path.dirname(__file__), '万理之城_设定圣经.docx') doc.save(out) print(f'已生成: {out}')