Skip to content

Commit

Permalink
feat: add __getitem__() and keys() methods
Browse files Browse the repository at this point in the history
  • Loading branch information
danielnsilva committed Jan 21, 2023
1 parent 4acbd11 commit efe16fe
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 53 deletions.
115 changes: 62 additions & 53 deletions semanticscholar/Journal.py
Original file line number Diff line number Diff line change
@@ -1,53 +1,62 @@
class Journal:
'''
This class represents the Journal where the paper was published.
'''

def __init__(self, data) -> None:
self._name = None
self._pages = None
self._volume = None
self._init_attributes(data)

def __str__(self) -> str:
return f'{self._name}'

def __repr__(self) -> str:
return self.__str__()

@property
def name(self) -> str:
'''
:type: :class:`str`
'''
return self._name

@property
def pages(self) -> str:
'''
:type: :class:`str`
'''
return self._pages

@property
def volume(self) -> int:
'''
:type: :class:`int`
'''
return self._volume

@property
def raw_data(self) -> dict:
'''
:type: :class:`dict`
'''
return self._data

def _init_attributes(self, data):
self._data = data
if 'name' in data:
self._name = data['name']
if 'pages' in data:
self._pages = data['pages']
if 'volume' in data:
self._volume = data['volume']
from typing import Any


class Journal:
'''
This class represents the Journal where the paper was published.
'''

def __init__(self, data) -> None:
self._name = None
self._pages = None
self._volume = None
self._init_attributes(data)

def __str__(self) -> str:
return f'{self._name}'

def __repr__(self) -> str:
return self.__str__()

def __getitem__(self, key) -> Any:
return self._data.__getitem__(key)

def keys(self):
return self._data.keys()

@property
def name(self) -> str:
'''
:type: :class:`str`
'''
return self._name

@property
def pages(self) -> str:
'''
:type: :class:`str`
'''
return self._pages

@property
def volume(self) -> int:
'''
:type: :class:`int`
'''
return self._volume

@property
def raw_data(self) -> dict:
'''
:type: :class:`dict`
'''
return self._data

def _init_attributes(self, data):
self._data = data
if 'name' in data:
self._name = data['name']
if 'pages' in data:
self._pages = data['pages']
if 'volume' in data:
self._volume = data['volume']
9 changes: 9 additions & 0 deletions semanticscholar/Tldr.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
from typing import Any


class Tldr:
'''
This class represents auto-generated short summary of the paper from the
Expand All @@ -15,6 +18,12 @@ def __str__(self) -> str:
def __repr__(self) -> str:
return self.__str__()

def __getitem__(self, key) -> Any:
return self._data.__getitem__(key)

def keys(self):
return self._data.keys()

@property
def model(self) -> str:
'''
Expand Down

0 comments on commit efe16fe

Please sign in to comment.