Мне кажется, что есть две причины почему так лучше, даже если и не логично.
- Присваивание используется почти в каждой программе и поэтому логично было бы отметить её каким нибудь одним символом, чтобы не тратить доли секунд тысяч программистов, которые в итоге будут складываться в часы всемирно потерянного времени. Вообще я гиперболизировал, это не так уж и критично, в том же Паскале у присваивания два знака := и при том он был популярен, но просто зачем выбирать более долгий вариант, если можно более быстрый?
- Ещё на примере Python, в ряду <=,>=,!=,== , мне кажется логичнее выглядит именно этот вариант, но это вкусовщина, тут нет объективности.
Ещё могу предположить, что есть причины не связанные с оптимальным дизайном языка, возможно до этого уже был язык, который имел такое обозначение и для того, чтобы программистам которые переходят на новый язык было легче, то взяли такой же как в том. А тот первый язык мог взять такое обозначение, просто потому что захотелось автору, опять же обозначения не критичны, но взяли в итоге все этот вариант, чтобы всем было попроще.