The goal is to support a useful subset of Python syntax and keep the resulting files small.
Python reference details more about specific types and global functions.
docstrings are seen but ignored. You cannot retrieve them. They do not end up in the output jmp file.
Variable arguments and keyword arguments (*args and **kwargs). Note that methods added in Java/ObjC can take variable numbers of arguments. You can call apply() to call a function with a list of arguments.
Default arguments
Bitwise operators (<< >> & | ^)
Classes - note however that there is a useful approximation
Decorators
Threads (mutexes ensure only one call at a time into Jia Mini Python can happen)
Exceptions
More than one source file/module
Generators
Import
With
Tuple unpacking. For example:
for x,y in z:
pass
Floating point
Bytes type
Assignment to False/True/None (allowed in some Python versions to change value).
Exceptions are not supported nor is try/except. If you do something that results in an exception (eg adding a number to a string) then a Java level exception will be thrown, or Objective C error returned.
If you do need to be highly dynamic then consider using the Look Before You Leap style where you make checks before performing operations that can fail. Note that multi-threading is not supported (serialised) so there are no race conditions.