aboutsummaryrefslogtreecommitdiff
path: root/Python/pywarpx/Bucket.py
diff options
context:
space:
mode:
authorGravatar Andrew Myers <atmyers2@gmail.com> 2020-01-24 11:38:22 -0800
committerGravatar Andrew Myers <atmyers2@gmail.com> 2020-01-24 11:38:22 -0800
commitd21b7d819a1bc84fdb28deff578f369a6932b5b8 (patch)
treeaf6a1901206a9c10de60b9afdfcf3c606e1cf3ff /Python/pywarpx/Bucket.py
parentf0f1e4009a53f032d6c69082e600680025086c89 (diff)
parenta32b3292967b6b0ee766ad14303c6cd0f2369b04 (diff)
downloadWarpX-d21b7d819a1bc84fdb28deff578f369a6932b5b8.tar.gz
WarpX-d21b7d819a1bc84fdb28deff578f369a6932b5b8.tar.zst
WarpX-d21b7d819a1bc84fdb28deff578f369a6932b5b8.zip
Merge branch 'dev' into bugfix
Diffstat (limited to 'Python/pywarpx/Bucket.py')
-rw-r--r--Python/pywarpx/Bucket.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/Python/pywarpx/Bucket.py b/Python/pywarpx/Bucket.py
index 66494a700..6a32c755b 100644
--- a/Python/pywarpx/Bucket.py
+++ b/Python/pywarpx/Bucket.py
@@ -1,3 +1,5 @@
+import numpy as np
+
class Bucket(object):
"""
The purpose of this class is to be a named bucket for holding attributes.
@@ -34,9 +36,13 @@ class Bucket(object):
# --- The strip is then needed when value is a string.
if isinstance(value, str):
rhs = value
- elif hasattr(value, '__iter__'):
- # --- For lists, tuples, and arrays make a space delimited string of the values
- rhs = ' '.join(map(repr, value))
+ elif np.iterable(value):
+ if len(value) == 0:
+ # --- Skip if empty
+ continue
+ # --- For lists, tuples, and arrays make a space delimited string of the values.
+ # --- The lambda is needed in case this is a list of strings.
+ rhs = ' '.join(map(lambda s : repr(s).strip("'\""), value))
else:
rhs = value
attrstring = '{0}.{1} = {2}'.format(self.instancename, attr, repr(rhs).strip("'\""))