The most readable way is
x = 10 if a > b else 11
but you can use
x = a > b and 10 or 11
The “Zen of Python” says that “readability counts”, though, so go for the first way.
Also, the and-or trick will fail if you put a variable instead of
10 and it evaluates to
However, if more than the assignment depends on this condition, it will be more readable to write it as you have:
if A[i] > B[j]: x = A[i] i += 1 else: x = A[j] j += 1
unless you put
j in a container. But if you show us why you need it, it may well turn out that you don’t.