diff --git a/python/damask/_config.py b/python/damask/_config.py index f6714cd81..39db34834 100644 --- a/python/damask/_config.py +++ b/python/damask/_config.py @@ -41,8 +41,10 @@ class NiceDumper(yaml.SafeDumper): return self.represent_data(data.tolist()) if isinstance(data, Rotation): return self.represent_data(data.quaternion.tolist()) - else: - return super().represent_data(data) + if hasattr(data, 'dtype'): + return self.represent_data(data.item()) + + return super().represent_data(data) def ignore_aliases(self, data: Any) -> bool: diff --git a/python/tests/test_Config.py b/python/tests/test_Config.py index e6fa2daff..0fce31106 100644 --- a/python/tests/test_Config.py +++ b/python/tests/test_Config.py @@ -46,7 +46,8 @@ class TestConfig: assert Config.load(tmp_path/'config.yaml') == config def test_numpy(self,tmp_path): - assert Config({'A':np.ones(3,'i')}).__repr__() == Config({'A':[1,1,1]}).__repr__() + assert Config({'A':np.ones(3,'i'), 'B':np.ones(1)[0]}).__repr__() == \ + Config({'A':[1,1,1], 'B':1.0}).__repr__() def test_abstract_is_valid(self): with pytest.raises(NotImplementedError):