python中如何替换字符串,字符串替换指定字符python

  python中如何替换字符串,字符串替换指定字符python

  今天上网看到有人贴了一个函数replace_words用于Python中的字符串替换。意思是任何txt文件。在Python中读取后,可以使用自定义字典将所有键替换为值。

  def replace_words(text,word_dic):

  yo=re.compile( )。join(map(re.escape,word_dic)))

  定义翻译(mat):

  return word_dic[mat.group(0)]

  return yo.sub(翻译,文本)

  我试过了,它起作用了。

  my_dic={Colour:Color , Centre:Center}

  text_2=replace_words(text_1,my_dic)

  因此,文件text_1中的所有颜色和中心都已被替换。

  但这毕竟是网上的,有几个地方我不太懂。请问我:

  首先是“”。第2行join(map(re.escape,word_dic))先用escape对字符串中的非字母数字字符进行转义,那为什么要用“”把我的dic连接成字典呢?字符可以带“或”,字典可以带“或”?

  二、第4行的word_dic[mat.group(0)]直接写成word_dic[mat]不好吗?

  第三,第5行中的yo.sub(translate,text ),这是最令人费解的.关于。sub很好理解,但这是re。堆。sub,它使用文本read () like text替换空函数,如translate?字符替换功能?

  在网上发现了这样一个功能,因为水平有限,请大家多多指教。谢谢你

  首先是“”。第2行join(map(re.escape,word_dic))先用escape对字符串中的非字母数字字符进行转义,那为什么要用“”把我的dic连接成字典呢?字符可以带“或”,字典可以带“或”?Map(re.escape,word_dic)等价于map(re.escape,word.dic.keys())

  #返回包含所有字典关键字的列表

  .join(_that_list__) #用连接所有键。

  #返回彩色中心

  “”在正则表达式中表示“或”。

  二、第4行的word_dic[mat.group(0)]直接写成word_dic[mat]不好吗?你不能。

  Mat是一个正则表达式。在搜索文本之后,它返回一个匹配对象。这个对象不是字典中的键,word _ DIC的键是string。

  第三,第5行中的yo.sub(translate,text ),这是最令人费解的.关于。sub很好理解,但这是re。堆。sub,它使用文本read () like text替换空函数,如translate?字符替换功能?Re.compile.sub -将在文本中搜索“ColourCentre”(颜色或中心)。找到匹配后,调用translate函数进行转换。颜色将被转换成word _ DIC [Colour],即 Color

  请注明文章来源和网址:https://www.iplaypy.com/wenda/wd19088.html.

  相关文章推荐

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: