diff --git a/datastock/_class0.py b/datastock/_class0.py index 0c54855..64868be 100644 --- a/datastock/_class0.py +++ b/datastock/_class0.py @@ -172,7 +172,7 @@ def save( verb=True, ): - lsep = [';', '&', '?', '#', ',', '~', '.', '-', '_'] + lsep = ['::', ';;', '&&', '??', '##', ',,', '~~', '..', '__'] if sep is None: for ss in lsep: c0 = ( @@ -214,4 +214,4 @@ def save( __all__ = [ sorted([k0 for k0 in locals() if k0.startswith('DataStock')])[-1] -] \ No newline at end of file +] diff --git a/datastock/_generic_check.py b/datastock/_generic_check.py index 975e61b..bc964a4 100644 --- a/datastock/_generic_check.py +++ b/datastock/_generic_check.py @@ -674,7 +674,7 @@ def _check_all_broadcastable( # raise Exception if needed if len(dfail) > 0: - lstr = [f"\t- {k0}: {v0}" for k0, v0 in dfail.items()] + lstr = [f"\t- '{k0}': {v0}" for k0, v0 in dfail.items()] msg = ( "The following keywords args have non-compatible shape:\n" + "\n".join(lstr) diff --git a/datastock/_saveload.py b/datastock/_saveload.py index 62053d8..2d9dec3 100644 --- a/datastock/_saveload.py +++ b/datastock/_saveload.py @@ -290,6 +290,8 @@ def load( dout[k0] = list(dflat[k0]) elif typ == 'str': dout[k0] = str(dflat[k0]) + elif isinstance(dflat[k0], str) and 'str' in typ: + dout[k0] = dflat[k0] elif typ == 'chararray': dout[k0] = dflat[k0] elif typ in ['int']: @@ -579,4 +581,4 @@ def _get_files_from_path( else: warnings.warn(msg) - return out \ No newline at end of file + return out