Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

有 BUG🐛,戳这里👇 #26

Closed
Ailln opened this issue Aug 18, 2020 · 28 comments
Closed

有 BUG🐛,戳这里👇 #26

Ailln opened this issue Aug 18, 2020 · 28 comments

Comments

@Ailln
Copy link
Owner

Ailln commented Aug 18, 2020

写下你的问题,尽可能的详细描述~

@Ailln Ailln pinned this issue Aug 18, 2020
@xiaoludian
Copy link

安装PyYAML5.3版本的时候 提示ERROR: Cannot uninstall 'PyYAML'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

导致cn2an 安装不成功

@Ailln
Copy link
Owner Author

Ailln commented Aug 20, 2020

@xiaoludian 你可以尝试先手动更新 PyYAML 到最新版本,再安装 cn2an 。

pip install PyYAML -U --ignore-installed

@mengxifeng
Copy link

mengxifeng commented Sep 16, 2020

1、
输入:原价都是全国统一零售价它是幺三八
输出:原价都是全国统10售价它是138
统一零售价不用转吧
2、
输入:卖到几十块钱
输出:卖到几10块钱
我理解几十块钱也不需要转吧

@Ailln
Copy link
Owner Author

Ailln commented Sep 16, 2020

@mengxifeng 我理解你所说的意思,但目前本库所使用的技术仅限于规则匹配。在下个0.x版本中,我考虑加入一些机器学习的内容来改善它。

@mengxifeng
Copy link

@mengxifeng 我理解你所说的意思,但目前本库所使用的技术仅限于规则匹配。在下个0.x版本中,我考虑加入一些机器学习的内容来改善它。

赞,期待新版本~

@yilei0620
Copy link

input: cn2an.transform(创业板指九月九日早盘低开百分之一点五七)
output: 创业板指9月9日早盘低开1.5699999999999998%

@Ailln
Copy link
Owner Author

Ailln commented Sep 23, 2020

@yilei0620 收到,我会在下个小版本修复它。

@Ailln
Copy link
Owner Author

Ailln commented Sep 23, 2020

input: cn2an.transform(创业板指九月九日早盘低开百分之一点五七)
output: 创业板指9月9日早盘低开1.5699999999999998%

v0.5.7 版本中,这个问题已经被修复,请更新后使用~

@hurricanedjp
Copy link

hurricanedjp commented Nov 11, 2020

input: cn2an.cn2an('百万', 'smart')
出错:ValueError: 不符合格式的数据:百万
千百,千万,百亿,千亿,万亿也不行

@hurricanedjp
Copy link

hurricanedjp commented Nov 11, 2020

input: cn2an.cn2an('10000000000000', 'smart')
出错 ValueError: 不符合格式的数据:10000000000000
大于1亿不行

@hurricanedjp
Copy link

input: cn2an.cn2an('4万一', 'smart')可以
input: cn2an.cn2an('14万一', 'smart')不行

@Ailln
Copy link
Owner Author

Ailln commented Nov 11, 2020

@hurricanedjp 感谢反馈~

  1. 百万 是单位,cn2an 接受的格式为 数字 + 单位数字。可以尝试在单位前加 ,比如 一百万
  2. cn2an 的功能是「中文数字」转「阿拉伯数字」,可以尝试 cn2an.an2cn("10000000000000") 解决。(我刚刚发现这里似乎有个小 bug,输出的结果没有去掉低位置单位)
  3. smart 模式仅仅是用规则做了一些匹配,暂时不支持 14万一 这样的模式。(这部分需要抽象出更好的方法,还没有想到比较好的解决方案)

@Ailln
Copy link
Owner Author

Ailln commented Nov 11, 2020

v0.5.8 修复了 cn2an.an2cn("10000000000000") 转化不正确的问题。

@hurricanedjp
Copy link

cn2an.cn2an('104207', 'smart') 有问题

@hurricanedjp
Copy link

v0.5.8 修复了 cn2an.an2cn("10000000000000") 转化不正确的问题。

多谢,辛苦

@hurricanedjp 感谢反馈~

  1. 百万 是单位,cn2an 接受的格式为 数字 + 单位数字。可以尝试在单位前加 ,比如 一百万
  2. cn2an 的功能是「中文数字」转「阿拉伯数字」,可以尝试 cn2an.an2cn("10000000000000") 解决。(我刚刚发现这里似乎有个小 bug,输出的结果没有去掉低位置单位)
  3. smart 模式仅仅是用规则做了一些匹配,暂时不支持 14万一 这样的模式。(这部分需要抽象出更好的方法,还没有想到比较好的解决方案)

cn2an.an2cn("10000000000000")是可以的。但我的需求是,无论中文还是阿拉伯数字都转成阿拉伯数字,所以直接用smart的

@Ailln
Copy link
Owner Author

Ailln commented Nov 26, 2020

cn2an.cn2an('104207', 'smart') 有问题

你可以试试,先用 int(input) 强行转化,捕获异常后再做 cn2an 转化。

@hurricanedjp
Copy link

cn2an.cn2an('104207', 'smart') 有问题

你可以试试,先用 int(input) 强行转化,捕获异常后再做 cn2an 转化。

我自己程序肯定打了补丁了,单纯反馈个bug

@Ailln
Copy link
Owner Author

Ailln commented Nov 28, 2020

@hurricanedjp 嗯嗯,感谢反馈~

@invobzvr
Copy link

invobzvr commented Feb 2, 2021

输入:

一百十,一百十一......一百十九

输出:

100, 101, ...... , 109

都差了10
应该是__integer_convert里单位相连的问题
个人的解决办法是

if index == len(integer_data) - 1: # 215行
    output_integer += unit

改成

if index == len(integer_data) - 1 or integer_data[index + 1] in self.conf["unit_cn2an"]:
    output_integer += unit

但是没有考虑其他情况,不知道有没有更好的办法🤣

@Ailln
Copy link
Owner Author

Ailln commented Feb 2, 2021

@invobzvr 感谢反馈,我会尽快检查问题~

@Ailln
Copy link
Owner Author

Ailln commented Feb 2, 2021

引发这个问题的主要原因是单位前面没有数字,建议这样做:

import cn2an

text = "一百十"

# 用正则写可能更简单,这里仅做示意
if "百十" in text:
    text = text.replace("百十", "百一十")

result = cn2an.cn2an(text)
print(result)
# 110

非规范描述特别多,规则很难完全覆盖。

@chbambooshoot
Copy link

image
“半”,“两”不支持识别

@Ailln
Copy link
Owner Author

Ailln commented Mar 11, 2021

@chbambooshoot 会在下个小版本支持这个功能

@Hotinosin
Copy link

句子转化中“一点九亿”显示“WARN: 不符合格式的数据”

@Ailln
Copy link
Owner Author

Ailln commented Jul 22, 2021

句子转化中“一点九亿”显示“WARN: 不符合格式的数据”

@Hotinosin 收到,稍晚一点进行确认。

@Hotinosin
Copy link

还有在句子转化中“一直”“一般”“一天”“一样”等等,带“一”的词语有转化的错误

@Ailln
Copy link
Owner Author

Ailln commented Jul 22, 2021

#35

@Ailln Ailln closed this as completed Nov 1, 2021
@Ailln
Copy link
Owner Author

Ailln commented Nov 1, 2021

有 BUG 直接提新的 Issue。

@Ailln Ailln unpinned this issue Nov 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants