用python提取excel表格第一列汉字首字母到第二列
今天有个任务就是需要提取excel表格里面的汉字首字母,然后我就手动写了三个小时,结果还剩3000多行,这样下去不行啊
想了下用python能不能做到呢?
import openpyxl
from pypinyin import lazy_pinyin, Style
# 加载工作簿
workbook = openpyxl.load_workbook('hanzi.xlsx')
# 选择工作表
sheet = workbook.active
# 提取每一列汉字的拼音首字母,并将结果统一放到第二列
for column in range(1, sheet.max_column + 1):
for row in range(2, sheet.max_row + 1): # 从第二行开始,因为第一行是列标题
cell = sheet.cell(row=row, column=column)
if cell.value:
# 将汉字转换为拼音
pinyin = lazy_pinyin(cell.value)
# 提取每个拼音的第一个字母并转换为小写
first_letters = [p[0].lower() for p in pinyin]
# 将首字母合并为一个字符串
merged_letters = ''.join(first_letters)
# 将结果写入第二列的单元格
sheet.cell(row=row, column=2).value = merged_letters
# 保存修改后的表格
workbook.save('example_modified.xlsx')
答案是一定可以,有需要的小伙伴可以参考下