将文件中的所有整数转换为零

时间:2015-10-17 17:14:03

标签: python regex string

我是python的新手,我正在尝试扫描文件并将我找到的任何整数转换为值1。 我可以使用正则表达式吗?或某种我可以使用的功能

2 个答案:

答案 0 :(得分:1)

def numbers_with_zero(file_):
    import re
    # Note:current regex will convert floats and ints to 0
    # if one wants to just convert ints, and convert them to 1
    # do line = re.sub(r'[-+]?\d+',r'1',line)

    file_contents = []

    # read file, change lines
    with open(file_, 'r') as f:
        for line in f:
            # this regex should take care of ints, floats, and sings, if any
            line = re.sub(r'[-+]?\d*\.\d+|\d+',r'0',line)
            file_contents.append(line)

    # reopen file and write changed lines back
    with open(file_, 'w') as f:
        for line in file_contents:
            f.write(line)

答案 1 :(得分:0)

Olle Muronde,您可以在the post中找到有关如何重写文件中行的信息。每行文件都可以被视为一个字符串,其他人替换某些符号的最简单方法是来自re modulechar* fun() { return "awake"; } int main() { printf("%s",fun()+ printf("I see you")); return 0; } 函数。我强烈建议您学习python文档并更频繁地使用google或stackoverflow搜索,因为已经发布了很多好的答案。