torchtext를 쓰다보면
from torchtext.data import Dataset, Example, Field, Iterator, LabelField, NestedField, RawField
class Anything(Dataset):
def __init__(self, *arg, fields, filter_pred=None):
examples = []
...
super(Anything, self).__init__(examples, fields, filter_pred)
examples라는 것을 볼 수 있는데(물론 오브젝트형은 달리도 엄청 많지만) examples 속에 어떻게 내용이 들어가 있는가 확인하기 위해서는
print(examples[-1].__dict__)
라는 식으로 안을 들여다 볼 수 있다. 파이썬은 기본적으로 사전형으로 오브젝트를 저장하기 때문이다.
참고로 torchtext는 Field 정보를 통해 처리한 정보는 튜플 형으로 저장되기 때문에
data, = Anything.iters( ... )
라는 식으로 불러와야 한다.
(여기서 iters는 정해진 함수 명은 아니고 Field 정보를 지정해 정보를 보존하는 역할을 하는 함수 이름이다)
data 속에 있는 정보를 활용하고 싶을 때에는
data.dataset.field[' ... ']
로 불러와 사용하면 된다. '...'는 examples 속 key의 이름이다.
'파이썬3 노트' 카테고리의 다른 글
pycharm과 terminal에서의 python3 환경이 달라 에러가 날 때 (0) | 2019.03.29 |
---|---|
[Iterator] (0) | 2019.01.13 |
[**kwargs] [assert] (0) | 2018.12.17 |
pathlib 이야기: [Path.open()] [Path.home()] [exists()] [mkdir()] (0) | 2018.12.15 |
[return] [yield] [yield from] (0) | 2018.12.15 |