Я (постоянно) работаю над проектом с gmail и imaplib. Я ищу в gmail электронные письма, содержащие определенное слово, и получаю список уникальных идентификаторов (большая часть моего кода основана на / принадлежит Дагу Хеллману из его превосходного учебника по imaplib ). Эти уникальные идентификаторы сохраняются в списке. Я пытаюсь получить один идентификатор из списка, но random.choice продолжает тянуть весь список. Вот код:
import imaplib
import random
from imaplib_list_parse import parse_list_response
c = imaplib_connect.open_connection()
msg_ids = []
c.select('[Gmail]/Chats', readonly=True)
typ, msg_ids = c.search(None, '(BODY "friend")')
random_id = random.choice(msg_ids)
print random_id
В интерпретаторе я запутался, и msg_ids - это определенно список. Я также пытался извлечь определенные элементы массива (например, msg_ids [1] и т. Д.), Но там написано «IndexError: список индексов вне диапазона», что, как я понимаю, означает «то, что вы ищете, там нет» , что сбивает с толку, потому что это там.
Есть ли когда-нибудь список, а не список? Или что-то? Я не совсем понимаю.
Как всегда, я ценю любые отзывы, которые могут дать замечательные люди из stackoverflow:)