在json中剥离踪迹空白



我有一个大的json文件,里面有1000多个条目。这个json被馈送到下游库中进行进一步处理。我正在寻找一种更简单的方法来消除值部分中所有尾随的空白。

{
"Country": [
{
"country_name": "Germany ",
"country_capital": " Berlin",
"concept_description": "Germany is also known as Deutschland ",
"country_cities": [
"Frankfurt"
],
"neighbouring_countries": [
" Belgium",
"France "
],
"country_group": "Europe "
},
{
"country_name": " France ",
"country_capital": " Paris",
"concept_description": "Effiel Tower is in paris ",
"country_cities": [
" montpellier"
],
"neighbouring_countries": [
" Belgium",
"Spain "
],
"country_group": "Europe "
}
]
}

我尝试使用String.strip()和列表理解来实现这个mylist = [[x.strip() for x in y] for y in mylist]。但是,某些键的值是列表,有些键只是字符串。

您可以使用递归函数来剥离所有内容吗?

def strip(value):
if isinstance(value, str):
return value.strip()
if isinstance(value, list):
return list(map(strip, value))
# handle dict etc, by recursive call to `strip()`

如果结构是一致的,例如neighbouring_countries总是一个列表,则可以使用任何数据验证库。我自己更喜欢schema

最新更新