What OS, CPU and rustc version is this on? Are you running in release mode?
On my system (Ryzen 5900X, Arch Linux with export LD_PRELOAD=/usr/lib/libjemalloc.so and rustc 1.69.0-nightly) Rust is slightly faster:
➜ hash_perf git:(main) ✗ hyperfine ./hash.py
Benchmark 1: ./hash.py
Time (mean ± σ): 138.6 ms ± 2.7 ms [User: 110.9 ms, System: 27.5 ms]
Range (min … max): 133.7 ms … 142.2 ms 21 runs
➜ hash_perf git:(main) ✗ cargo build --release; hyperfine ./target/release/hash_perf
Finished release [optimized] target(s) in 0.00s
Benchmark 1: ./target/release/hash_perf
Time (mean ± σ): 125.5 ms ± 1.5 ms [User: 98.7 ms, System: 26.5 ms]
Range (min … max): 121.9 ms … 128.4 ms 23 runs