สรุปปัญหาและคำถาม
ฉันพยายามดูข้อมูลบางอย่างภายในวัตถุที่สามารถระบุได้ แต่ไม่ได้จัดทำดัชนี ฉันยังใหม่กับงูใหญ่ แต่ฉันไม่เข้าใจว่ามันเป็นไปได้อย่างไร
หากคุณสามารถระบุได้ทำไมคุณไม่สามารถเข้าถึงดัชนีผ่านวิธีการแจกแจงแบบเดียวกัน และถ้าไม่มีวิธีเข้าถึงรายการเป็นรายบุคคลหรือไม่?
ตัวอย่างจริง
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)
ใช้ชุดย่อยที่เลือกของชุดข้อมูล
foo = train_data.take(5)
ฉันสามารถวนซ้ำfoo
ด้วยการแจกแจง:
[In] for i, x in enumerate(foo):
print(i)
ซึ่งสร้างผลลัพธ์ที่คาดหวัง:
0
1
2
3
4
แต่เมื่อฉันพยายามจัดทำดัชนีfoo[0]
ฉันจะได้รับข้อผิดพลาดนี้:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-44-2acbea6d9862> in <module>
----> 1 foo[0]
TypeError: 'TakeDataset' object does not support indexing