Итерация через вложенный JSON, полученный из данных API, не работающих

Получить список сетевых и локальных принтеров в ASP.NET

Этот метод использует инструментарий управления Windows или интерфейс WMI.

private void GetAllPrinterList()
        {
            ManagementScope objScope = new ManagementScope(ManagementPath.DefaultPath); //For the local Access
            objScope.Connect();

            SelectQuery selectQuery = new SelectQuery();
            selectQuery.QueryString = "Select * from win32_Printer";
            ManagementObjectSearcher MOS = new ManagementObjectSearcher(objScope, selectQuery);
            ManagementObjectCollection MOC = MOS.Get();
            foreach (ManagementObject mo in MOC)
            {
                lstPrinterList.Items.Add(mo["Name"].ToString());
            }
        }

Нажмите здесь, чтобы загрузить демо-версию источника и приложения

Демонстрация приложения, в котором указан сетевой и локальный принтер

enter image description here [/g1]

1
задан Matthew Love 13 July 2018 в 22:29
поделиться

1 ответ

Есть две проблемы, с которыми вы сталкиваетесь здесь:

Проблема №1 заключается в том, что данные, которые вы обрабатываете, на самом деле не являются парной: ключом: значение, поскольку ваш код предполагает, что вы ожидаете; это на самом деле массив кортежей. Зачем? Dunno - конечно, не самый элегантный дизайн API.

Проблема №2 заключается в том, что эта проблема, которая решается с помощью .iteritems() (или .items() для Python 3) .

Попробуйте следующее:

for o in data.iteritems():
    for date, data in {o[0]: o[1]}.iteritems():
        print(date, data['1. open'], data['2. high'], ....etc.)
2
ответ дан brandonscript 17 August 2018 в 12:07
поделиться
  • 1
    Прежде всего, спасибо за вашу помощь! Просто хотел добавить, что в моем случае и для любого другого, использующего python 3, заменить каждый экземпляр iteritems () на items (). Который я узнал из того, что вы связали. Так что спасибо! – Matthew Love 14 July 2018 в 00:08
  • 2
    Хех, я бы сказал это, но вы отметили его Python 2 – brandonscript 14 July 2018 в 00:11
Другие вопросы по тегам:

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