Лучший способ справиться с NoneType в списке при повторении через него для экспорта значения ключа во вложенном списке [duplicate]

Используйте функцию callback() внутри успеха foo(). Попробуйте таким образом. Это просто и легко понять. & nbsp;

var lat = "";
var lon = "";
function callback(data) {
    lat = data.lat;
    lon = data.lon;
}
function getLoc() {
    var url = "http://ip-api.com/json"
    $.getJSON(url, function(data) {
        callback(data);
    });
}

getLoc();
227
задан thefourtheye 9 April 2015 в 16:31
поделиться

3 ответа

Итак, как я могу опросить переменную, которая является NoneType?

Использовать оператор is, например

if variable is None:

Почему это работает ?

Поскольку None является единственным одноэлементным объектом NoneType в Python, мы можем использовать оператор is для проверки того, является ли переменная имеет None в нем или нет.

Цитирование из is docs ,

Тесты is и is not для идентификации объекта: x is y является истинным тогда и только тогда, когда x и y являются одним и тем же объектом. x is not y дает обратное значение истинности.

Поскольку может быть только один экземпляр None, is будет предпочтительным способом проверки None.


Услышьте его из уст лошади

Цитата Руководство по стилю кодирования Python - PEP-008 (совместно определяемый самим Гвидо),

Сравнение с синглтонами типа None всегда должно выполняться с помощью is или is not, никогда не выполняемых операторов равенства.

355
ответ дан thefourtheye 23 August 2018 в 16:45
поделиться

Это также можно сделать с помощью isinstance согласно ответ Алекса Холла :

>>> NoneType = type(None)
>>> x = None
>>> type(x) == NoneType
True
>>> isinstance(x, NoneType)
True

isinstance также интуитивно, но есть усложнение, которое требует line

NoneType = type(None)

, который не нужен для таких типов, как int и float.

9
ответ дан cardamom 23 August 2018 в 16:45
поделиться
if variable is None:
   print 'Is None'

-

if variable is not None:
   print 'Isn\'t None'
45
ответ дан elhoucine 23 August 2018 в 16:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: