Types
A type object can be used for testing whether an object is an instance of that type with the function isinstance(). Some type objects are callable to create new instances of that type (all of the following builtin type objects are).
A type object has the attributes __module__, __name__ and __doc__.
bool(obj=False, /)
bool(foo) converts foo to an boolean. I.e. True or False is
returned according to the truth value of foo. Calling bool without
arguments returns False.
int(obj=0, /, base=None)
int(foo) converts foo to an integer. foo can be a string, a float,
a boolean or an integer. int can also be called with two arguments. In this
case the first argument must be a string and the second is the number base for
the conversion. Calling int without arguments returns 0.
float(obj=0.0, /)
float(foo) converts foo to a float. foo can be a string, a float,
a boolean or an integer. Calling float without arguments returns 0.0.
str(obj="", /)
str(foo) converts foo to a string. If foo is None or Undefined
the result will be the empty string. For lists and dictionaries the exact format
is undefined, but should follow Python’s repr format. For color objects the
result is a CSS expression (e.g. "#fff"). Calling str without arguments
returns the empty string.
date(year, month, day, hour=0, minute=0, second=0, microsecond=0)
date() creates a date object from the parameter passed in. date()
supports from three parameters (year, month, day) upto seven
parameters (year, month, day, hour, minute, second,
microsecond).
timedelta(days=0, seconds=0, microseconds=0)
timedelta returns an object that represents a timespan. timedelta
allows from zero to three arguments specifying the numbers of days, seconds and
microseconds. Passing negative values or values that are out of bounds (e.g.
24*60*60+1 seconds) is allowed. Arguments default to 0, i.e. timedelta()
returns the timespan for “0 days, 0 seconds, 0 microseconds”. In a boolean
context this object is treated as false (i.e. bool(timedelta())) returns
False). The following arithmetic operations are supported:
date+timedeltadate-timedeltatimedelta+timedeltatimedelta-timedeltanumber*timedeltatimedelta*numbertimedelta/numbertimedelta//int
monthdelta(months=0, /)
monthdelta returns an object that represents a timespan of a number of
months. monthdelta allows zero or one arguments. With zero arguments
monthdelta returns the timespan for “0 months”. In a boolean context this
object is treated as false (i.e. bool(monthdelta())) or
bool(monthdelta(0))) return False). The following arithmetic operations
are supported:
date + monthdeltadate - monthdeltamonthdelta + monthdeltamonthdelta - monthdeltaint * monthdeltamonthdelta // int
For operations involving date objects, if the resulting day falls out of the
range of valid days for the target month, the last day for the target month
will be used instead, i.e. <?print @(2000-01-31) + monthdelta(1)?> prints
2000-02-29.
color(r=0, g=0, b=0, a=255)
color returns a color object. Each argument must be an integer between
0 and 255. Values will be clipped accordingly. For example
<?print color(0x33, 0x66, 0x99)?>
prints #369 and
<?print color(0x33, 0x66, 0x99, 0xcc)?>
prints rgba(51,102,153,0.800).
list(iterable=[], /)
list(foo) converts foo to a list. This works for lists, strings and all
iterable objects. Calling list without arguments returns an empty list.
dict(*args, **kwargs)
dict(foo) converts foo to a dictionary. For this, foo must be either
a dictionary itself, or an iterable of (key, value) pairs. dict() supports
multiple positional arguments. Later entries overwrite earlier ones.
(i.e. dict({17: 23}, {17: 42}) returns {17: 42}). dict also supports
arbitrary keyword arguments, which create dictionary entries with the name of
the argument as a string key, so dict(foo=42) returns {'foo': 42}.
Calling dict without arguments returns an empty dictionary.
set(iterable=[], /)
set(foo) converts foo to a set. This works for lists, strings and all
iterable objects. Calling set without arguments returns an empty set.