Python как получить длину списка байтов класса - PullRequest
0 голосов
/ 21 декабря 2018

Я использую электронную почту IMAP4, и я получаю количество писем с заданной темой, как в списке ниже, я также получаю его тип.Моя цель - получить его размер или длину:

  emailsUIDs = [b'80 83 84 85 86 87 88 89 90 91 93 126 136 137 138 139 140']
  print(type(emailsUIDs ))  # Prints --> type of Object =  <class 'list'>

  myLen = len((str(emailsUIDs ).replace("b'", "").replace("'", "")).split())

Я пробовал len (emailsUIDs), но получаю только 1, есть ли лучший способ получить длину emailsUID и не выполнять строкуманипулирование, как я делаю

1 Ответ

0 голосов
/ 21 декабря 2018

У вас есть список с одним элементом (байтовый объект).Вам нужно сделать это, чтобы извлечь список идентификаторов:

emailsUIDs = [b'80 83 84 85 86 87 88 89 90 91 93 126 136 137 138 139 140']
ids_bytes = emailsUIDs[0]
ids_bytes_list = ids_bytes.split()
ids_list = map(int, ids_bytes_list)

, затем вы можете использовать идентификаторы в числовой форме из этого списка, или, если вам просто нужен подсчет, вы могли бы просто сделать len(ids_bytes_list) прямо.

...