Python 在这种情况下,如何替换(sub)这个词

Python 在这种情况下,如何替换(sub)这个词,python,regex,Python,Regex,我正在从事Tensorflow项目并构建对象检测API包装器。 我想做的是用一些值替换文件“PATH\u to\u BE\u configurated/mscoco\u train.record”的这个特定部分,同时保留所有其他内容。如何使用re模块来实现这一点? 有一个类似于此的耦合块,因此我需要从train\u input\u reader指定范围。 我试过各种各样的方法,但没有一种是正确的,所以我问 train_input_reader { label_map_path: test

我正在从事Tensorflow项目并构建对象检测API包装器。 我想做的是用一些值替换文件
“PATH\u to\u BE\u configurated/mscoco\u train.record”
的这个特定部分,同时保留所有其他内容。如何使用
re
模块来实现这一点? 有一个类似于此的耦合块,因此我需要从
train\u input\u reader
指定范围。 我试过各种各样的方法,但没有一种是正确的,所以我问

train_input_reader {
  label_map_path: test
  tf_record_input_reader {
    input_path: "PATH_TO_BE_CONFIGURED/mscoco_train.record"
  }
}

您可以使用
re.sub

re.sub(r'input_path:\s+"[^"]*"', 'input_path: "{}"'.format(new_path), s)
比如说,

>>> import re
>>> new_path = "new_path"
>>> s="""train_input_reader {
...   label_map_path: test
...   tf_record_input_reader {
...     input_path: "PATH_TO_BE_CONFIGURED/mscoco_train.record"
...   }
... }"""
>>> s = re.sub(r'input_path:\s+"[^"]*"', 'input_path: "{}"'.format(new_path), s)
>>>
>>> print(s)
train_input_reader {
  label_map_path: test
  tf_record_input_reader {
    input_path: "new"
  }
}
>>> 

您可以使用。您是否可以用所需的结果编辑您的问题,目前还不清楚您是要替换
“路径”以进行配置”
、文件本身还是整个文件path@Rakesh这不是字典。我想做的是替换那个特定的部分,同时保留它的原样。