Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Functions tab in the expressions window shows a single text box where you can type any global definitions you want to use in your Python scripts. When typing here, you need to follow the Python syntax (see http://www.python.org). Normally, you will use this space to define custom functions to be used in expressions.

Image RemovedDesigner FunctionsImage Added


An example shown before was the function we defined to determine the background color

...

...

It is also possible to define global variables, that is, variables that can be used in expressions or functions, but that will not be listed under the visible items. For example, we could change the above function definition to

Code Block
languagepy
colorA = 'Red'

...


colorB = 'Green'

...


colorC = 'Blue'

...



def getcolor(flag):

...


if flag == 'A':

...


return colorA

...


elif flag == 'B':

...


return colorB

...


else:

...


return colorC


To get a taste of the level of complexity you can achieve with custom functions, see the below definition of a function that converts a string to name casing. It uses the regular-expressions module of Python (see http://www.python.org for more information).

Code Block
import re

...



def namecase(s):

...


return re.sub('\w+', capitalizematch, s)

...



def capitalizematch(m):

...


return capitalize(m.group(0))

...



def capitalize(s):

...


if len(s) > 1:

...


return s[:1].upper() + s[1:].lower()

...


elif len(s) == 1:

...


return s.upper()

...


else:

...


return s

With the name-case function, you can convert a string like 'jOHn SMith' into 'John Smith'.

...