Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def __init__(self, fitshdu, columns):
"""
Input is the FITS instance and a list of column names.
"""
self.columns = columns
if isstring(columns) or isinteger(columns):
# this is to check if it exists
self.colnums = [fitshdu._extract_colnum(columns)]
self.is_scalar = True
self.columns_list = [columns]
else:
# this is to check if it exists
self.colnums = fitshdu._extract_colnums(columns)
self.is_scalar = False
self.columns_list = columns
self.fitshdu = fitshdu
def _extract_colnum(self, col):
"""
Get the column number for the input column
"""
if isinteger(col):
colnum = col
if (colnum < 0) or (colnum > (self._ncol-1)):
raise ValueError(
"column number should be in [0,%d]" % (0, self._ncol-1))
else:
colstr = mks(col)
try:
if self.case_sensitive:
mess = "column name '%s' not found (case sensitive)" % col
colnum = self._colnames.index(colstr)
else:
mess \
= "column name '%s' not found (case insensitive)" % col
colnum = self._colnames_lower.index(colstr.lower())
except ValueError: