传递给API时,Python字符串会混乱

问题描述

英国Covid Python SDK(https://publichealthengland.github.io/coronavirus-dashboard-api-python-sdk/)可以收集某个区域的数据,例如巴恩斯利,使用以下代码

data_structure = {...}
region_string = ["areaType=ltla;areaName=Barnsley"]
api = Cov19API(filters=region_string,structure=data_structure)

print(api)返回以下内容效果很好:

COVID-19 in the UK - API Service
Current parameters: 
{
    "filters": "areaType=ltla;areaName=Barnsley","structure": "{\"date\":\"date\",\"area\":\"areaName\",\"cases\":\"newCasesByPublishDate\"}"
}

我正在尝试使用以下代码为县内的一系列区域调用API:

for name in Yorkshire['area'].to_list():
    print(name)
    regionString = f'["areaType=ltla;areaName={name}"]'
    print(regionString)
    api = Cov19API(filters=regionString,structure=cases_only)
    print(api)

但是由于某种原因,region_string在传递给Cov19API时会出现加扰的分号:

Barnsley
["areaType=ltla;areaName=Barnsley"]
COVID-19 in the UK - API Service
Current parameters: 
{
    "filters": "[;';a;r;e;a;T;y;p;e;=;l;t;l;a;';,; ;';a;r;e;a;N;a;m;e;=;B;a;r;n;s;l;e;y;';]",\"cases\":\"newCasesByPublishDate\"}"
}
...

我认为这是因为filter在带有空格的任何块之间添加了分号,但是我不知道为什么相同的变量在第一个实例中起作用时为什么它不接受字符串。任何建议将不胜感激。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)