将正常汉字随机转换为火星文风格文本。 611 个汉字映射,1020 条映射关系。
bash
python3 {baseDir}/scripts/mars_text.py "要转换的文本"
参数说明默认值--all全部转换(同默认行为,所有有映射的字都转)默认即全量--prob 0.7转换概率 0.0-1.0,调低可保留部分原字1.0--seed N随机种子,用于复现结果随机--map 字查看某个字的所有替代写法—--jsonJSON格式输出否
bash
# 全量转换(默认)
python3 scripts/mars_text.py "我爱你中国"
# 输出:莪嫒伱忠囯
# 查看映射
python3 scripts/mars_text.py --map 我
# 输出:「我」→ 莪 / 涐
# 保留部分原字(50%概率)
python3 scripts/mars_text.py "今天天气很好" --prob 0.5
# 可复现
python3 scripts/mars_text.py "测试" --seed 42
替代字必须满足以下 至少一条 才可入选:
规则说明示例✅ 同音字拼音相同(忽略声调)的常用字很→狠, 今→衿, 因→洇✅ 繁体字对应的繁体/异体写法国→國, 听→聽, 梦→夢✅ 经典火星文文化上公认的火星文(即使拼音不同)我→莪/涐, 在→茬, 天→兲✅ 形近变体视觉结构与原字明显相关伱(你), 旳(的), 眞(真)✅ 符号替代非CJK字符(圈数字等)一→①, 七→⑦
禁止入选的字:
禁止类型说明反面示例❌ 生僻无关字读者完全无法辨认的字楩→听, 茣→好❌ 仅声母相同只是首字母碰巧一样稅→说(sh-对但完全不像)❌ 古音/罕见读音匹配靠古汉语冷僻读音凑出的匹配悳→的, 悅→说
核心判断标准:一个普通中文读者看到替代字,能否在3秒内猜出原字?不能则不合格。
在 scripts/mars_text.py 的 MARS_MAP 列表中添加新映射:
python
("字", ["替代1", "替代2", "替代3"]),
添加前必须验证:新增的每个替代字都必须满足上述质量规则。宁可少一个映射,也不要加入让人看不懂的字。