In my experience, mypy tends to be more correct and correctly understands more python code.
For example, the following won't type check in pyright (it doesn't infer the type of out):
out = []
for x in bar:
out.append(x \* 2)
return out
Edit: also pyright's vendoring of type stubs is annoying as they take precedence over downloaded type stubs.Edit2: also lack of plugins, makes using things like Pydantic less type safe compared to mypy