鱼C论坛

 找回密码
 立即注册
查看: 2564|回复: 1

[已解决]分词后的汉字 怎么才能 跟拼音 大致对齐?

[复制链接]
发表于 2022-12-9 11:25:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
有没有办法让  文字-拼音   大致对齐?
有没有办法让  文字-拼音   大致对齐?.jpg


import jieba
from pypinyin import lazy_pinyin,pinyin

seg_str = "我是一个中国人。My name is Tom."
seg1 = " ".join(jieba.lcut(seg_str))

print(''.join(lazy_pinyin(seg1,1)))
print(seg1)
最佳答案
2022-12-9 16:40:58
本帖最后由 阿奇_o 于 2022-12-9 16:42 编辑
  1. # "不完美的"解决办法: 根据拼音的长度来决定汉字的占用字符长度
  2. import re
  3. import jieba
  4. from pypinyin import lazy_pinyin, pinyin

  5. s = "我是一个中国人。My name is Tom."
  6. seg = jieba.lcut(s)
  7. print(seg)  
  8. py = [''.join(lazy_pinyin(c, 1)) if re.search('[\u4e00-\u9fa5]', c) else c for c in seg]
  9. print(py)

  10. c_len = [len(i) for i in py]
  11. print(' '.join(py))
  12. print(''.join([ h + ' '*(cl-len(h)) for h, cl in zip(seg, c_len)]))

  13. # "近乎完美的"解决办法:  放到"表格"里再格式化  
  14. ......  (pandas的相关功能)

复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-12-9 16:40:58 | 显示全部楼层    本楼为最佳答案   
本帖最后由 阿奇_o 于 2022-12-9 16:42 编辑
  1. # "不完美的"解决办法: 根据拼音的长度来决定汉字的占用字符长度
  2. import re
  3. import jieba
  4. from pypinyin import lazy_pinyin, pinyin

  5. s = "我是一个中国人。My name is Tom."
  6. seg = jieba.lcut(s)
  7. print(seg)  
  8. py = [''.join(lazy_pinyin(c, 1)) if re.search('[\u4e00-\u9fa5]', c) else c for c in seg]
  9. print(py)

  10. c_len = [len(i) for i in py]
  11. print(' '.join(py))
  12. print(''.join([ h + ' '*(cl-len(h)) for h, cl in zip(seg, c_len)]))

  13. # "近乎完美的"解决办法:  放到"表格"里再格式化  
  14. ......  (pandas的相关功能)

复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-20 06:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表