Skip to content

Commit

Permalink
Minor changes
Browse files Browse the repository at this point in the history
  • Loading branch information
mattpitkin committed Nov 22, 2017
1 parent f097cae commit a12b366
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 22 deletions.
10 changes: 10 additions & 0 deletions psrqpy/pulsar.py
Original file line number Diff line number Diff line change
Expand Up @@ -384,3 +384,13 @@ def get_ephemerides(self, version=None):

# return list of ephemerides
return [self._psrs[psr].get_ephemeris() for psr in self._psrs]

def __str__(self):
"""
Define string method
"""

if self.have_ephemerides():
return '\n'.join(self.get_ephemerides())
else:
return '\n'.join([self._psrs[psr].name for psr in self._psrs])
48 changes: 26 additions & 22 deletions psrqpy/search.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,8 @@ def __init__(self, params=None, condition=None, psrtype=None, assoc=None, bincom
self._query_output = None
self._get_ephemeris = get_ephemeris

self._pulsars = None # gets set to a Pulsars object by get_pulsars()

# check parameters are allowed values
if isinstance(params, list):
if len(params) == 0:
Expand Down Expand Up @@ -235,6 +237,7 @@ def parse_query(self, requestcontent=''):
qoutput = pretags[-1].text
self._query_output = OrderedDict()
self._npulsars = 0
self._pulsars = None # reset to None in case a previous query had already been performed

if not self._get_ephemeris: # not getting ephemeris values
# put the data in an ordered dictionary dictionary
Expand Down Expand Up @@ -370,34 +373,35 @@ def get_pulsars(self):
for a Pulsar object
"""

from .pulsar import Pulsar, Pulsars
if not self._pulsars:
from .pulsar import Pulsar, Pulsars

# check if JNAME or NAME was queried
if 'JNAME' not in self._query_params and 'NAME' not in self._query_params:
self._query_params.append('JNAME') # add JNAME parameter
# check if JNAME or NAME was queried
if 'JNAME' not in self._query_params and 'NAME' not in self._query_params:
self._query_params.append('JNAME') # add JNAME parameter

# re-do query
self._query_content = self.generate_query()
# re-do query
self._query_content = self.generate_query()

# parse the query with BeautifulSoup into a dictionary
self._query_output = self.parse_query()
nameattr = 'JNAME'
elif 'JNAME' in self._query_params:
nameattr = 'JNAME'
else:
nameattr = 'NAME'
# parse the query with BeautifulSoup into a dictionary
self._query_output = self.parse_query()
nameattr = 'JNAME'
elif 'JNAME' in self._query_params:
nameattr = 'JNAME'
else:
nameattr = 'NAME'

self._pulsars = Pulsars()
self._pulsars = Pulsars()

# add pulsars one by one
psrtable = self.table()
for row in psrtable:
attrs = {}
for key in psrtable.colnames:
attrs[key] = row[key]
# add pulsars one by one
psrtable = self.table()
for row in psrtable:
attrs = {}
for key in psrtable.colnames:
attrs[key] = row[key]

P = Pulsar(attrs[nameattr], version=self.get_version, **attrs)
self._pulsars.add_pulsar(P)
P = Pulsar(attrs[nameattr], version=self.get_version, **attrs)
self._pulsars.add_pulsar(P)

return self._pulsars

Expand Down

0 comments on commit a12b366

Please sign in to comment.