Python:如何从列表中的字典中提取特定值

时间:2021-06-05 23:09:24

标签: python dictionary

我在调用 reverse_geocoder 函数后收到以下结果,我想将 'name' 键的值检索到单个变量中。我该怎么做才能得到它?。

[{'lat': '-34.57365',
  'lon': '-58.44924',
  'name': 'Colegiales',
  'admin1': 'Buenos Aires F.D.',
  'admin2': '',
  'cc': 'AR'}]

我正在尝试使用以下代码,但出现错误“类型错误:列表索引必须是整数或切片,而不是 str”:

For index, row in df_dummies[mask_nulls].iterrows():
    a = (row['lat'], row['lon'])
    address = rg.search(a)
    suburb = address['name']
    barrios.append(address)

谢谢

2 个答案:

答案 0 :(得分:0)

您只需要为列表[0]创建一个引用变量。然后就可以使用字典['name']来提取值了。

答案 1 :(得分:0)

如您所见,“地址”是一个列表而不是字典。如果您确定列表始终只包含一本字典,您可以使用此

$ ("#wrapped"). submit (function (e) {
// preventing from page reload and default actions
e.preventDefault ();
// serialize the data for sending the form data.
var serializedData = $(this).serialize();

$('#id_model_0').val('1');
$('#id_model_1').val('2');

// make POST ajax call
$ .ajax ({
    type: 'POST',
    url: "{% url 'create_app' %}",
    data: serializedData,
    success: function (response) {
        // on successfull creating object
        console.log('success');
        console.log(data.message);
        $ ("#wrapped"). trigger ('reset');
    },
    error: function (response) {
        // alert the error if any error occured
        console.log('error');
        alert (response ["responseJSON"] ["error"]);
    }
})