Checking for legal sudoku boards
Coding style

Please follow PEP8, the style guide for Python code.
As you read through it, you should recognize several coding style violations in your posted code. 
There is also a command line tool called pep8, which can check your entire project and report the violations. You can install it with:

pip install pep8


Strange condition

This looks very strange:


return values is not False and all(unitsolved(unit) for unit in unitlist)



From the posted code it's not clear what is the type of values.
The plural name implies some kind of collection,
but then it can never be False.
As such, this condition doesn't make sense.