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
+timedelta
date
-timedelta
timedelta
+timedelta
timedelta
-timedelta
number
*timedelta
timedelta
*number
timedelta
/number
timedelta
//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 + monthdelta
date - monthdelta
monthdelta + monthdelta
monthdelta - monthdelta
int * monthdelta
monthdelta // 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.