I haven't write in Go, but I have written in Lua, which has a similar error handling convention.
I don't understand why "Go forces you to handle the error (or explicitly ignore it)". I find [a sample program](https://gobyexample.com/writing-files) and remove all the error checking code. Nothing unlike in Python happens. It compiles without warnings (even C can warn you about not using returned values).
I can see how Rust forces people to either handle the error, or explicitly ignore it. When you forget about it, it just doesn't compile.
I don't understand why "Go forces you to handle the error (or explicitly ignore it)". I find [a sample program](https://gobyexample.com/writing-files) and remove all the error checking code. Nothing unlike in Python happens. It compiles without warnings (even C can warn you about not using returned values).
I can see how Rust forces people to either handle the error, or explicitly ignore it. When you forget about it, it just doesn't compile.