由于之前写了一篇博客Python-实现将excel里的中文(汉字)转对应拼音输出,我让结果显示在控制台,但有朋友想把它导出到excel/txt文件,所以我就写以下如何实现吧
1.字符串写入excel文件,方法一:
excel = open("../test/test0401.xlsx", "w").write(result)
2.字符串写入excel文件,方法二:
x = 1 # 在第二行开始写
y = 0 # 在第一列开始写
xls = xlwt.Workbook()
sheet = xls.add_sheet('sheet', cell_overwrite_ok=True) # 生成excel的方法,声明excel
for z in result.split("\n"):
sheet.write(0, 0, '拼音') # 在第一行第一列单元格写"拼音"
sheet.write(x, y, z) # x代表行,y代表列
x += 1
y += 1
y = 0
xls.save('E://untitled1/test/Excel_test0401.xlsx') # 保存
3.字符串写入txt文件:
txt = open("../test/test0401.txt", "w").write(result)
4.示例:
import xlwt
from pypinyin import lazy_pinyin
import pandas as pd
#读入EXCEL文件
filepath = "../test_word/lyj.xlsx"
ex = pd.read_excel(filepath)
result = ""
for i in range(ex.shape[0]):
zh_word = (ex.iloc[i,0])
test_list = lazy_pinyin(zh_word)
#result = result + ''.join(test_list) + ','#不换行
result = result +''.join(test_list)+'\n'#换行
#将字符串写入txt文件
txt = open("../test/test0401.txt", "w").write(result)
#将字符串写入excel文件,方法一
excel = open("../test/test0401.xlsx", "w").write(result)
# 将字符串写入excel文件,方法二
x = 1 # 在第二行开始写
y = 0 # 在第一列开始写
xls = xlwt.Workbook()
sheet = xls.add_sheet('sheet', cell_overwrite_ok=True) # 生成excel的方法,声明excel
for z in result.split("\n"):
sheet.write(0, 0, '拼音') # 在第一行第一列单元格写"拼音"
sheet.write(x, y, z) # x代表行,y代表列
x += 1
y += 1
y = 0
xls.save('E://untitled1/test/Excel_test0401.xlsx') # 保存
print("finish")
5.上面示例,我三种方法都用了,所以生成了如图三个文件: