-
Notifications
You must be signed in to change notification settings - Fork 0
/
gen.py
91 lines (83 loc) · 3.21 KB
/
gen.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
from re import findall
for i in range(0x61, 0x61+26): print(f"{chr(i)}={chr(i).upper()}") #小-大写
en_jpkana = """
"""
d=findall("(\S+)\(([^)]+)\)", en_jpkana) # 英大小写-日片假
for k, v in d:
for c in k: print(f"{c}={v}")
jpkana_hanzi = """
A
ア/あ:阿、安,亚、恶、爱;
イ/い:伊、以,移、意、异;
ウ/う:宇,于、有、忧、云;
エ/え:江、衣,要、英、盈;
オ/お:于、御。
K
カ/か:加,家、驾、贺、可、河、我、甘、闲、香;
キ/き:几,奇、支、起、喜、归、鬼、艺、义、〔闻〕;
ク/く:久,具、俱、九、求、区;
ケ/け:介(个)、计,希、遣、气、外;
コ/こ:己,古、故、孤、居、举、期、护、许、〔越、子〕。
S
サ/さ:散、左,佐、差、斜、沙、锁、乍、作;
シ/し:之,士、志、慈、次、事、思、斯、四、新;
ス/す:须、寸,朱、数、寿、春;
セ/せ:世,制、齐、势、是、声;
ソ/そ:曾,楚、所、处、苏、宗、〔添〕。
T
タ/た:多、太,陀、田、当、堂;
チ/ち:千、知,地、智、致、治、迟;
ツ/つ:川,都、豆、津、徒、图;
テ/て:天,帝、氐、低、转、亭、〔手〕;
ト/と:止,度、登、等、东、〔户〕。
N
ナ/な:奈,那、难、南、〔名〕;
ニ/に:二、仁,尔、你、耳、〔丹〕;
ヌ/ぬ:奴,努、怒;
ネ/ね:祢,年、〔根、子〕;
ノ/の:乃,能、农、浓、〔之〕。
H
ハ/は:八、波,巴、霸、破、颇、半、盘、〔者、叶〕;
ヒ/ひ:比,避、毗、悲、非、飞、〔火、日〕;
フ/ふ:不,布、普、夫、妇、风;
ヘ/へ:部,弊、倍、陪、遍、边、平;
ホ/ほ:保,宝、富、本、番、奉。
M
マ/ま:万、末,马、麻、摩、莫、满、〔真、间〕;
ミ/み:〔三〕、美,弥、微、未、〔见、身〕;
ム/む:牟、武,无、舞、务;
メ/め:〔女〕,卖、每、咩、米、免、面;
モ/も:毛,母、茂、文、蒙、〔裳〕。
Y
ヤ/や:也,夜、耶、野、阳、〔八、屋〕;
ユ/ゆ:由,游、逾;
yi:以
𛀀/𛀁:衣,江
ヨ/よ:与,余、馀、予、用、〔世〕。
R
ラ/ら:良,罗、乐、〔等〕;
リ/り:利,梨、里、理、李、离;
ル/る:流、留,琉、娄、屡、类、累;
レ/れ:礼,丽、例、料、连;
ロ/ろ:吕,路、露、鲁、卢。
W
ワ/わ:和,倭、王;
ヰ/ゐ:井、为,遗;
wu:污(汚)/儒(㐵)
ヱ/ゑ:惠,卫;
ヲ/を:乎、远,乌、越、雄。
n
ン/ん:尔,无。
"""
d=findall("(\S+):([^,、]+)", jpkana_hanzi)
for k, v in d:
for c in k.replace("/", ""): print(f"{c}={v}")
def nlTrim(s): return s.replace("\n\n", "\n")
def lines(t): return t.split("\n")
for a, b in zip(*map(lines, [text0, text])): print(f"{a}/{b}")
for k, v in findall("(\S*)\n\(\n(.*?)\n\)\n", a): print(f"{k}={v}") # 百度文库
def readDict(path):
txt = open(path).read()
return [kv.split("=")[1] for kv in a.split("\n") if kv != ""]
s_a, s_b = (readDict(f"jp/{k}-romaji.txt") for k in ["katakana", "hiragana"])
for k in set(s_a+s_b): print(f"{k}=")