Why not go for python-bitcoinlib, or pybitcointools? They include functions to do this.
The procedure you need is:
- Serialize the public key, paying attention to whether the private key requires compression for public keys.
- Hash the serialized public key with RIPEMD160(SHA256(X))
- Base58_check encode the hash, using \x00 as the version byte.