Podsumowanie problemu i pytanie
Próbuję spojrzeć na niektóre dane wewnątrz obiektu, które można wyliczyć, ale nie można ich indeksować. Nadal jestem nowy w Pythonie, ale nie rozumiem, jak to możliwe.
Jeśli możesz to wyliczyć, dlaczego nie możesz uzyskać dostępu do indeksu w ten sam sposób, w jaki to robi? A jeśli nie, to czy istnieje sposób na uzyskanie indywidualnego dostępu do przedmiotów?
Rzeczywisty przykład
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)
Wybierz wybrany podzbiór zestawu danych
foo = train_data.take(5)
I może iterować foo
z enumerate:
[In] for i, x in enumerate(foo):
print(i)
który generuje oczekiwany wynik:
0
1
2
3
4
Ale wtedy, gdy próbuję się do niego zindeksować, pojawia foo[0]
się ten błąd:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-44-2acbea6d9862> in <module>
----> 1 foo[0]
TypeError: 'TakeDataset' object does not support indexing