Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python提取行中的特定数据?_Python_Python 2.7 - Fatal编程技术网

如何使用python提取行中的特定数据?

如何使用python提取行中的特定数据?,python,python-2.7,Python,Python 2.7,我有一个文件包含如下行: 754.82915: MODE1(0, 0x001900, 0x00090) 754.82916: MODE2(0, 0x001900, 0x00090) 如何在python中从“(“to”)获取数据 我试过密码: fo=open("file1.txt","r") fin=open("file2.txt","w") lines=fo.readlines() for line in lines: result=re.search(r'\(.*\)', line)

我有一个文件包含如下行:

754.82915: MODE1(0, 0x001900, 0x00090)
754.82916: MODE2(0, 0x001900, 0x00090)
如何在python中从“(“to”)获取数据

我试过密码:

fo=open("file1.txt","r")
fin=open("file2.txt","w")
lines=fo.readlines()
for line in lines:
    result=re.search(r'\(.*\)', line)
    res="\n"+result.group()
    fin.write(res)
fo.close()
它显示以下错误:

AttributeError: 'NoneType' object has no attribute 'group' 

您应该考虑使用<代码> < <代码> >语句和<代码> FUNDALL()/<代码>函数>代码> Re>代码>模块,如:

import re

with open('file1.txt', 'r') as fin:
    with open('file2.txt', 'w') as fout:
        fout.write('\n'.join(re.findall(r'\(.*\)', fin.read())))

按照您的原始代码,只需添加一行即可检查
result
是否为
None

with open("file1.txt","r") as fin:
    lines = fin.readlines()
    with open("file2.txt","w") as fout:
        for line in lines:
            result = re.search(r'\(.*\)', line)
            if result:     # check if not None
                res = "\n" + result.group()
                fout.write(res)

您还应该学习@Peter更具python风格的答案。

这就是您文本文件的确切内容?(可能还有一些空行):如果字符串中没有与模式匹配的位置,则返回None;请注意,这与在字符串中的某个点查找零长度匹配不同。