0
点赞
收藏
分享

微信扫一扫

Python实现String Interpolation

JamFF 2022-03-25 阅读 159
python

目录

之前我在《Java面试案例-String interpolation的实现》(左侧标题为超链接,点击可以跳转)这篇文章中,展示了Java实现String interpolation的代码实践(具体的题目也在该文中,这里不再重复)。最近在学习Python,遂用这门语言进行了实践。

本文的思路和Java那篇文章一样,也是用正则表达式实现。

代码

import re
def interpolation(string, keyValues):
    for i in keyValues.keys():
        string = re.sub(r'\${{\s*' + i + '\s*}}', keyValues[i], string)
    print("还剩余%d个变量未替换" % len(re.findall(r'\${{\s*\S+\s*}}', string)))
    return string

的确,Python的代码要简介一些。但是我还是更喜欢Java。

测试

调用测试一下,得到的结果是正确的。

kv1 = {'姓名': '农民工老王', '年龄': "30"}
string1 = "博主的名字是${{姓名}},年龄是${{年龄}}。"
print(interpolation(string1, kv1))

kv2 = {'name': '农民工老王', 'city': "成都"}
string2 = "博主的名字是${{  姓名  }},所在的城市是${{ city }}。"
print(interpolation(string2, kv2))

在这里插入图片描述


如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。

举报

相关推荐

0 条评论