next up previous contents index
Next: Object status in SIC: Up: Importing SIC objects Previous: SIC images   Contents   Index

Handling character strings

Character strings are imported in a SicVar instance as any other SIC variable:

>>> Sic.comm('DEFINE CHARACTER G*8')
>>> Sic.comm('LET G "ABCDEFGH"')
>>> g
>>> print g
<SicVar instance>
>>> len(g)

Remember that numpy.ndarray's provide the .tostring() method which returns a Python string resulting of the concatenation of elements of a character array ('|S*' dtypes). This can be useful to handle SIC strings in Python. Nevertheless string concatenation and multiplication is already implemented in SicVar instances:

>>> h = 'xyz' + g + 'ijk'
>>> h
>>> type(h)
<type 'str'> # A standard Python string
>>> h = 2*g
>>> h

These SicVar strings can also be easily modified11:

>>> g[0] = "qwerty"
>>> g
'qwerty  ' # note 'g' has been automatically blank filled
>>> Sic.comm('EXA G')
G     = qwerty             ! Character* 8 GLOBAL

Gildas manager 2014-07-01