我有一个包含数字和字母的文件,我想将所有数字替换为单词(例如,8转换为8)。好吧,我只是没有办法检查我的文件中是否有数字。这样做的最有效方法是什么?
答案 0 :(得分:1)
这个问题也在这里得到了解答:replacing text in a file with Python
如果你想讨论内存用户和其他主题,这个问题应该可以解决问题:Search for string in txt file Python
有些人解释了从文件中读取文本的不同功能的不同用法,但在你的情况下,看起来它不是一个巨大的文件,所以第一个链接应该给你答案。
请记住,当你解析一个txt文件时,甚至" 8"是一个字符串。
答案 1 :(得分:1)
这只是为了找到文件中的数字,如果您不知道如何替换,请使用字典。
import re
text = open('text_numbers.txt')
for line in text:
line = line.strip()
y = re.findall('([0-9]+)',line)
答案 2 :(得分:1)
以下内容应该有效,它会读取输入文件,使用正则表达式查找所有数字,并使用num2words库替换每个文本:
push
import { push } from 'react-router-redux';
export default function redirect404() {
return (dispatch) => {
dispatch(replace('/404'));
};
}
库可以使用以下方式安装:
import re
import num2words
with open('input.txt') as f_input:
text = f_input.read()
text = re.sub(r"(\d+)", lambda x: num2words.num2words(int(x.group(0))), text)
with open('output.txt', 'w') as f_output:
f_output.write(text)
答案 3 :(得分:0)
您可以使用正则表达式查找数字,然后使用num2words包将数字转换为单词。并简单地替换它们。
In [1]: from num2words import num2words
In [2]: num2words(54)
Out[2]: u'fifty-four'
In [3]: num2words(8)
Out[3]: u'eight'