2015-11-04 3 views
1

Я новичок в Python и пытаюсь разобраться с psutil. После того, как я получаю счетчики ввода-вывода от функции, он говорит, что он возвращает кортеж, но затем, почему возвращаемый результат больше похож на словарь? Я могу получить данные, извлеченные как кортежи, но что означает «Ключи», перечисленные для каждого значения в этом кортеже? Как их извлечь? например, если я хочу извлечь строку «bytes_sent» из кортежа? Также это действительно набор? Я могу видеть данные, заключенные в().Tuple выглядит запутанным при возврате функций psutil

psutil.net_io_counters() 
    snetio(bytes_sent=201965381, bytes_recv=571417944, packets_sent=1972681, packets_recv=3515998, errin=0, errout=0, dropin=0, dropout=0) 

type (psutil.net_io_counters()) 
psutil._common.snetio 

print result[0] 
202031899 
+0

его namedtuple (в коллекции lib python), поэтому используйте snetio.bytes_sent, чтобы получить отправленные байты – labheshr

+0

@JTurk. Мой первоначальный вопрос: как получить значение Key в этом namedtuple? например: «bytes_sent». Я могу извлечь его значение уже. – Fenomatik

+0

Я комментировал ваш вопрос: «Почему полученный результат больше похож на словарь» и «но что означает« Ключи », перечисленные для каждого значения в этом кортеже» ... к которому ответ относится к названию набора, который является тем, что является предоставленный другим пользователем ниже ... – labheshr

ответ

2

Это будет collections.namedtuple. Вы можете взаимодействовать с ним либо как кортеж, либо используя его атрибуты. Лучшее из обоих миров и всего этого.

 Смежные вопросы

  • Нет связанных вопросов^_^