Skip to content

Commit e9e9024

Browse files
author
Pamela Wu
committed
CLN GH22874 replace bare excepts in pandas/io/pytables.py
1 parent 2f1b842 commit e9e9024

File tree

1 file changed

+25
-24
lines changed

1 file changed

+25
-24
lines changed

Diff for: pandas/io/pytables.py

+25-24
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ def _tables():
258258
try:
259259
_table_file_open_policy_is_strict = (
260260
tables.file._FILE_OPEN_POLICY == 'strict')
261-
except:
261+
except AttributeError:
262262
pass
263263

264264
return _table_mod
@@ -395,11 +395,11 @@ def read_hdf(path_or_buf, key=None, mode='r', **kwargs):
395395
'contains multiple datasets.')
396396
key = candidate_only_group._v_pathname
397397
return store.select(key, auto_close=auto_close, **kwargs)
398-
except:
398+
except (ValueError, TypeError):
399399
# if there is an error, close the store
400400
try:
401401
store.close()
402-
except:
402+
except AttributeError:
403403
pass
404404

405405
raise
@@ -517,7 +517,7 @@ def __getattr__(self, name):
517517
""" allow attribute access to get stores """
518518
try:
519519
return self.get(name)
520-
except:
520+
except (KeyError, ClosedFileError):
521521
pass
522522
raise AttributeError("'%s' object has no attribute '%s'" %
523523
(type(self).__name__, name))
@@ -675,7 +675,7 @@ def flush(self, fsync=False):
675675
if fsync:
676676
try:
677677
os.fsync(self._handle.fileno())
678-
except:
678+
except OSError:
679679
pass
680680

681681
def get(self, key):
@@ -1161,7 +1161,7 @@ def get_node(self, key):
11611161
if not key.startswith('/'):
11621162
key = '/' + key
11631163
return self._handle.get_node(self.root, key)
1164-
except:
1164+
except _table_mod.exceptions.NoSuchNodeError:
11651165
return None
11661166

11671167
def get_storer(self, key):
@@ -1270,7 +1270,7 @@ def _validate_format(self, format, kwargs):
12701270
# validate
12711271
try:
12721272
kwargs['format'] = _FORMAT_MAP[format.lower()]
1273-
except:
1273+
except KeyError:
12741274
raise TypeError("invalid HDFStore format specified [{0}]"
12751275
.format(format))
12761276

@@ -1307,7 +1307,7 @@ def error(t):
13071307

13081308
try:
13091309
pt = _TYPE_MAP[type(value)]
1310-
except:
1310+
except KeyError:
13111311
error('_TYPE_MAP')
13121312

13131313
# we are actually a table
@@ -1318,7 +1318,7 @@ def error(t):
13181318
if u('table') not in pt:
13191319
try:
13201320
return globals()[_STORER_MAP[pt]](self, group, **kwargs)
1321-
except:
1321+
except KeyError:
13221322
error('_STORER_MAP')
13231323

13241324
# existing node (and must be a table)
@@ -1354,12 +1354,12 @@ def error(t):
13541354
fields = group.table._v_attrs.fields
13551355
if len(fields) == 1 and fields[0] == u('value'):
13561356
tt = u('legacy_frame')
1357-
except:
1357+
except IndexError:
13581358
pass
13591359

13601360
try:
13611361
return globals()[_TABLE_MAP[tt]](self, group, **kwargs)
1362-
except:
1362+
except KeyError:
13631363
error('_TABLE_MAP')
13641364

13651365
def _write_to_group(self, key, value, format, index=True, append=False,
@@ -1624,7 +1624,7 @@ def is_indexed(self):
16241624
""" return whether I am an indexed column """
16251625
try:
16261626
return getattr(self.table.cols, self.cname).is_indexed
1627-
except:
1627+
except AttributeError:
16281628
False
16291629

16301630
def copy(self):
@@ -1654,9 +1654,10 @@ def convert(self, values, nan_rep, encoding, errors):
16541654
kwargs['freq'] = _ensure_decoded(self.freq)
16551655
if self.index_name is not None:
16561656
kwargs['name'] = _ensure_decoded(self.index_name)
1657+
# making an Index instance could throw a number of different errors
16571658
try:
16581659
self.values = Index(values, **kwargs)
1659-
except:
1660+
except Exception: # noqa: E722
16601661

16611662
# if the output freq is different that what we recorded,
16621663
# it should be None (see also 'doc example part 2')
@@ -1869,7 +1870,7 @@ def create_for_block(
18691870
m = re.search(r"values_block_(\d+)", name)
18701871
if m:
18711872
name = "values_%s" % m.groups()[0]
1872-
except:
1873+
except IndexError:
18731874
pass
18741875

18751876
return cls(name=name, cname=cname, **kwargs)
@@ -2232,7 +2233,7 @@ def convert(self, values, nan_rep, encoding, errors):
22322233

22332234
try:
22342235
self.data = self.data.astype(dtype, copy=False)
2235-
except:
2236+
except TypeError:
22362237
self.data = self.data.astype('O', copy=False)
22372238

22382239
# convert nans / decode
@@ -2325,7 +2326,7 @@ def set_version(self):
23252326
self.version = tuple(int(x) for x in version.split('.'))
23262327
if len(self.version) == 2:
23272328
self.version = self.version + (0,)
2328-
except:
2329+
except AttributeError:
23292330
self.version = (0, 0, 0)
23302331

23312332
@property
@@ -2769,7 +2770,7 @@ def write_array(self, key, value, items=None):
27692770
else:
27702771
try:
27712772
items = list(items)
2772-
except:
2773+
except TypeError:
27732774
pass
27742775
ws = performance_doc % (inferred_type, key, items)
27752776
warnings.warn(ws, PerformanceWarning, stacklevel=7)
@@ -2843,7 +2844,7 @@ class SeriesFixed(GenericFixed):
28432844
def shape(self):
28442845
try:
28452846
return len(getattr(self.group, 'values')),
2846-
except:
2847+
except (TypeError, AttributeError):
28472848
return None
28482849

28492850
def read(self, **kwargs):
@@ -2961,7 +2962,7 @@ def shape(self):
29612962
shape = shape[::-1]
29622963

29632964
return shape
2964-
except:
2965+
except AttributeError:
29652966
return None
29662967

29672968
def read(self, start=None, stop=None, **kwargs):
@@ -3495,7 +3496,7 @@ def create_axes(self, axes, obj, validate=True, nan_rep=None,
34953496
if axes is None:
34963497
try:
34973498
axes = _AXES_MAP[type(obj)]
3498-
except:
3499+
except KeyError:
34993500
raise TypeError("cannot properly create the storer for: "
35003501
"[group->%s,value->%s]"
35013502
% (self.group._v_name, type(obj)))
@@ -3614,7 +3615,7 @@ def get_blk_items(mgr, blocks):
36143615
b, b_items = by_items.pop(items)
36153616
new_blocks.append(b)
36163617
new_blk_items.append(b_items)
3617-
except:
3618+
except (IndexError, KeyError):
36183619
raise ValueError(
36193620
"cannot match existing table structure for [%s] on "
36203621
"appending data" % ','.join(pprint_thing(item) for
@@ -3642,7 +3643,7 @@ def get_blk_items(mgr, blocks):
36423643
if existing_table is not None and validate:
36433644
try:
36443645
existing_col = existing_table.values_axes[i]
3645-
except:
3646+
except (IndexError, KeyError):
36463647
raise ValueError("Incompatible appended table [%s] with "
36473648
"existing table [%s]"
36483649
% (blocks, existing_table.values_axes))
@@ -4460,7 +4461,7 @@ def _get_info(info, name):
44604461
""" get/create the info for this name """
44614462
try:
44624463
idx = info[name]
4463-
except:
4464+
except KeyError:
44644465
idx = info[name] = dict()
44654466
return idx
44664467

@@ -4782,7 +4783,7 @@ def __init__(self, table, where=None, start=None, stop=None, **kwargs):
47824783
)
47834784
self.coordinates = where
47844785

4785-
except:
4786+
except ValueError:
47864787
pass
47874788

47884789
if self.coordinates is None:

0 commit comments

Comments
 (0)