Как убедиться, что ключи dict python имеют нижний регистр?

Переменные имеют тип и значение.

  • $var = "тест" является строкой, которые содержат "тест"
  • , $var2 = 24 является целым числом vhose, значение равняется 24.

при использовании этих переменных (в PHP), иногда у Вас нет хорошего типа. Например, если Вы делаете

if ($var == 1) {... do something ...}

, PHP должны преобразовать ("для кастинга") $var к целому числу. В этом случае, "$var == 1" верен, потому что любая непустая строка является литой к 1.

При использовании ===, Вы проверяете, что значение И ТИП равны, таким образом, "$var === 1" является ложью.

Это полезно, например, когда у Вас есть функция, которая может возвратить false (на ошибке) и 0 (результат):

if(myFunction() == false) { ... error on myFunction ... }

Этот код является неправильным, как будто myFunction() возвраты 0, это является литым ко лжи, и у Вас, кажется, есть ошибка. Корректный код:

if(myFunction() === false) { ... error on myFunction ... }

, потому что тест - то, что возвращаемое значение "является булевской переменной и является ложью" и не, "может быть литым ко лжи".

10
задан Natim 23 November 2010 в 10:19
поделиться

1 ответ

другая адаптация для обработки значений:


def lower_keys(x):
        if isinstance(x, str):
                return (x.lower())
        if isinstance(x, list):
                return [lower_keys(v) for v in x]
        elif isinstance(x, dict):
                return dict((k.lower(), lower_keys(v)) for k, v in x.items())
        else:
                return x
0
ответ дан 3 December 2019 в 13:31
поделиться
Другие вопросы по тегам:

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