在python中,如何在api端点{之前添加$符号

时间:2019-07-05 03:46:56

标签: python python-3.x append string-concatenation

我需要在每行{之前添加$符号。我该如何在python中做到这一点,

问题:使用python传递这些API端点之前,我正在从JSON文件中读取所有API端点,我需要在开放括号{

之前附加$符号

下面的代码从JSON文件中读取API端点名称并进行打印。

import json
with open("example.json", "r") as reads: # Reading all the API endpoints  from json file.
    data = json.load(reads)
    print(data['paths'].items())
    for parameters, values in data['paths'].items():
        print(parameters)

从上面的代码中,我需要进一步实现在打印{之前在$旁边添加一个$符号。

以下是我使用python读取json文件得到的列表:

/API/{id}/one
/{two}/one/three
/three/four/{five}

预期是:

/API/${id}/one
/${two}/one/three
/three/four/${five}

2 个答案:

答案 0 :(得分:0)

您可以使用re库。

for parameters, values in data['paths'].items():
     print(re.sub('{', '${', parameters))

有关re的更多信息,请遍历文档。 https://docs.python.org/3/library/re.html,这是一个非常有用的模块。

答案 1 :(得分:0)

您可以使用public static void main(String[] args) { Pattern p = Pattern.compile("ENERGY:\\s(.*)"); String st = "1562173405047|INFO|MyHalfDuplexModem@30:println|ENERGY: -s 1 -d 2 -b 288 -e 9.999788799994675071125 T {-s 1, -d 2 }\n" + "1562173405552|INFO|MyHalfDuplexModem@43:println|ENERGY: -s 3 -d 2 -b 96 -e 9.999779196127731100294 R {-s 3, -d 2 }\n" + "1562173406122|INFO|MyHalfDuplexModem@43:println|ENERGY: -s 1 -d 2 -b 288 -e 9.999764796127731100294 R {-s 1, -d 2 }\n" + "1562173406194|INFO|MyHalfDuplexModem@43:println|ENERGY: -s 2 -d 1 -b 96 -e 9.999759995924876667052 T {-s 2, -d 1 }"; Matcher mt = p.matcher(st); while (mt.find()) { String group = mt.group(1); System.out.println(group); } }

-s 1 -d 2 -b 288 -e 9.999788799994675071125   T   {-s 1, -d 2 }
-s 3 -d 2 -b 96 -e 9.999779196127731100294   R   {-s 3, -d 2 }
-s 1 -d 2 -b 288 -e 9.999764796127731100294   R   {-s 1, -d 2 }
-s 2 -d 1 -b 96 -e 9.999759995924876667052   T   {-s 2, -d 1 }