用python获取一个通用规范汉字文件(TGhanzi.txt)中的每个汉字的拼音并写入文件
时间: 2024-06-11 22:07:40 浏览: 138
可以使用第三方库pypinyin来获取汉字的拼音。以下是示例代码:
```python
import pypinyin
# 读取TGhanzi.txt文件
with open('TGhanzi.txt', 'r', encoding='utf-8') as f:
hanzi_list = f.read().split()
# 获取每个汉字的拼音
pinyin_list = []
for hanzi in hanzi_list:
pinyin = pypinyin.lazy_pinyin(hanzi)[0]
pinyin_list.append(pinyin)
# 将汉字和拼音写入文件
with open('hanzi_pinyin.txt', 'w', encoding='utf-8') as f:
for i in range(len(hanzi_list)):
f.write(hanzi_list[i] + ' ' + pinyin_list[i] + '\n')
```
以上代码将TGhanzi.txt文件中的每个汉字的拼音写入了一个新文件hanzi_pinyin.txt中,每行格式为“汉字 拼音”。
相关问题
用python获取一个通用规范汉字文件(TGhanzi.txt)中的每个汉字的拼音、部首名称的拼音、末笔划(最后一笔)名称的拼音,并写入文件
首先,需要下载TGhanzi.txt文件,并放在工作目录下。
然后,可以使用Python的内置库进行文本读取和字符串处理,同时使用第三方库pypinyin获取汉字拼音。
下面是一个示例代码,可以获取每个汉字的拼音、部首名称的拼音、末笔划名称的拼音,并写入文件:
```python
import os
import pypinyin
# 读取文件
with open('TGhanzi.txt', 'r', encoding='utf-8') as f:
content = f.read()
# 按行分割
lines = content.split('\n')
# 遍历每行
for line in lines:
# 分割每个汉字
chars = line.split()
for char in chars:
# 获取拼音
pinyin = ''.join(pypinyin.lazy_pinyin(char))
# 获取部首
radical = pypinyin.lazy_pinyin(pypinyin.pinyin(char, style=pypinyin.NORMAL)[0][0])[0]
# 获取末笔划
last_stroke = pypinyin.lazy_pinyin(pypinyin.stroke(char, output='name')[-1])[0]
# 写入文件
with open('output.txt', 'a', encoding='utf-8') as f:
f.write(char + '\t' + pinyin + '\t' + radical + '\t' + last_stroke + '\n')
```
以上代码将每个汉字的拼音、部首名称的拼音、末笔划名称的拼音,按照"汉字\t拼音\t部首名称\t末笔划名称"的格式写入output.txt文件。注意,这里使用了"a"模式,表示在文件末尾追加内容。如果需要每次运行前清空文件,可以将模式改为"w"。
用python获取一个通用规范汉字文件(TGhanzi.txt)中的每个汉字的拼音(带声调符号)并写入文件
可以使用第三方库pypinyin来获取汉字的拼音。首先需要安装pypinyin库,可以使用命令`pip install pypinyin`来安装。然后,读取TGhanzi.txt文件中的汉字,使用pypinyin库中的pinyin方法获取每个汉字的拼音(包括声调符号),并将结果写入文件中。
以下是示例代码:
```python
import pypinyin
# 打开文件
with open('TGhanzi.txt', 'r', encoding='utf-8') as f:
# 读取所有汉字
hanzi_list = f.read()
# 使用pypinyin库获取拼音
pinyin_list = pypinyin.lazy_pinyin(hanzi_list, style=pypinyin.TONE3)
# 将结果写入文件
with open('pinyin.txt', 'w', encoding='utf-8') as f:
f.write('\n'.join(pinyin_list))
```
在上述代码中,使用了pypinyin.lazy_pinyin方法获取拼音,并设置了style参数为pypinyin.TONE3,表示拼音带声调符号。将获取到的拼音列表用换行符连接成一个字符串,然后写入文件pinyin.txt中。
阅读全文