A `ValueError` is more appropriate for invalid arguments. `TypeError`s are raised when an operation is executed upon the wrong type.