Каково различие между [пустой указатель NSNull] и ноль?

На основании комментария @Md Махфузура Рахмана вы можете получить все данные без использования BeautifulSoup:

import requests
response = requests.get('http://acfarma.com.br/wp-content/plugins/entrefarma-map/json_formatter.json').json()
for r in response:
    print(r)

Вывод:

{'id': '159', 'endereco': 'AVENIDA PRESIDENTE DUTRA', 'numero': '18', 'complemento': '', 'bairro': 'CENTRO', 'cep': '88860-000', 'cidade': 'Siderópolis', 'estado': 'SC', 'ddd': '48', 'telefone': '3435-3692', 'email': 'drogasider@acfarma.com.br', 'latitude': '-28.5994988', 'longitude': '-49.42558963', 'nome': 'DROGASIDER COMERCIO DE MEDICAMENTOS E MANIPULACAO LTDA - ME - MATRIZ', 'descricao': '', 'tags': '', 'autor': ''}

и т. Д. [ 1110]

Или, если вы ищете отфильтрованные данные, например, cidade=Nova Veneza и bairro=CENTRO затем:

import requests

response = requests.get('http://acfarma.com.br/wp-content/plugins/entrefarma-map/json_formatter.json').json()
for r in response:
    if r['cidade'] == 'Nova Veneza' and r['bairro'] == 'CENTRO':
        print(r)

Выход:

{'id': '167', 'endereco': 'RUA CONEGO MIGUEL GIACA', 'numero': '14', 'complemento': '', 'bairro': 'CENTRO', 'cep': '88865-000', 'cidade': 'Nova Veneza', 'estado': 'SC', 'ddd': '48', 'telefone': '3436-2045', 'email': 'veneza@acfarma.com.br', 'latitude': '-28.6647154', 'longitude': '-49.4729414', 'nome': 'FARMACIA DUMINELLI E GORINI LTDA ME', 'descricao': '', 'tags': '', 'autor': ''}
{'id': '168', 'endereco': 'RUA DOS IMIGRANTES', 'numero': '357', 'complemento': 'EDIFICIO BISTEK', 'bairro': 'CENTRO', 'cep': '88865-000', 'cidade': 'Nova Veneza', 'estado': 'SC', 'ddd': '48', 'telefone': '3436-1347', 'email': 'gorini@acfarma.com.br', 'latitude': '-28.6370762', 'longitude': '-49.5055401', 'nome': 'FARMACIA GORINI LTDA ME', 'descricao': '', 'tags': '', 'autor': ''}

46
задан skywinder 24 January 2014 в 13:27
поделиться

4 ответа

Непосредственно из Apple :

Класс NSNull определяет одноэлементный объект, который вы используете для представления нулевых значений в ситуациях, когда nil запрещен как значение (обычно в коллекции объект, такой как массив или словарь).

Итак, в вашем примере именно это и происходит, программист выбирает помещать нулевой объект в массив контроллеров, где значение nil не допускается в качестве значения.

81
ответ дан 26 November 2019 в 20:21
поделиться

Нельзя добавить значение nil в NSArray или NSMutableArray . Если вам нужно сохранить значение nil , вам нужно использовать класс-оболочку NSNull , как показано в том фрагменте, который у вас есть. Это указано в документации .

12
ответ дан 26 November 2019 в 20:21
поделиться

Классы коллекций, такие как NSArray и NSDictionary, не могут содержать значения nil. NSNULL был создан специально как заполнитель для nil. Он может быть помещен в классы коллекций и только занимает место.

NSNull определяет объект singleton, что означает, что существует только один экземпляр NSNull (который вы создаете с помощью [NSNull null]), но его можно использовать в любом месте.

9
ответ дан 26 November 2019 в 20:21
поделиться

nil отмечает конец массива после массива объектов...

-13
ответ дан 26 November 2019 в 20:21
поделиться
Другие вопросы по тегам:

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