Résumé du problème et question
J'essaie de regarder certaines des données à l'intérieur d'un objet qui peuvent être énumérées mais non indexées. Je suis encore novice en python, mais je ne comprends pas comment cela est possible.
Si vous pouvez l'énumérer, pourquoi ne pouvez-vous pas accéder à l'index de la même manière que l'énumérer? Et sinon, existe-t-il un moyen d'accéder aux éléments individuellement?
L'exemple réel
import tensorflow_datasets as tfds
train_validation_split = tfds.Split.TRAIN.subsplit([6, 4])
(train_data, validation_data), test_data = tfds.load(
name="imdb_reviews",
split=(train_validation_split, tfds.Split.TEST),
as_supervised=True)
Prendre un sous-ensemble sélectionné de l'ensemble de données
foo = train_data.take(5)
Je peux répéter foo
avec énumérer:
[In] for i, x in enumerate(foo):
print(i)
qui génère la sortie attendue:
0
1
2
3
4
Mais alors, quand j'essaie de l'indexer, foo[0]
j'obtiens cette erreur:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-44-2acbea6d9862> in <module>
----> 1 foo[0]
TypeError: 'TakeDataset' object does not support indexing