Judging from the deadlock graph in the details section, this looks like a bug in 2.0.1. Are you doing anything else to the database other than running this specific query, or is this just starting up a fresh database and running the code you provided?
In any case, since it works in the Neo4j Browser, I'd suggest swapping to use the transactional APIs, as that is what the browser uses. Py2neo supports this using the "Cypher Transactions" feature, documented here: