gpt4 book ai didi

python - 序数替换

转载 作者:IT老高 更新时间:2023-10-28 21:35:59 25 4
gpt4 key购买 nike

我目前正在寻找用适当的序数表示(1st、2nd、3rd)替换第一、第二、第三等单词的方法。上周我一直在谷歌上搜索,但没有找到任何有用的标准工具或 NLTK 的任何功能。

那么有什么或者我应该手动编写一些正则表达式吗?

感谢您的建议

最佳答案

包裹number-parser可以将序数词(“first”、“second”等)解析为整数。

from number_parser import parse_ordinal
n = parse_ordinal("first")

要将整数转换为“1st”、“2nd”等,您可以使用以下命令(取自 Gareth on codegolf):

ordinal = lambda n: "%d%s" % (n,"tsnrhtdd"[(n//10%10!=1)*(n%10<4)*n%10::4])

这适用于任何数字:

print([ordinal(n) for n in range(1,32)])

['1st', '2nd', '3rd', '4th', '5th', '6th', '7th', '8th', '9th', '10th',
'11th', '12th', '13th', '14th', '15th', '16th', '17th', '18th', '19th',
'20th', '21st', '22nd', '23rd', '24th', '25th', '26th', '27th', '28th',
'29th', '30th', '31st']

关于python - 序数替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9647202/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com