Dedicated Coordinate struct or coordinates as args?

For some context, I wrote a semi-functional chess engine in Python, and I'm learning Rust by porting it over. The functions in the Python project that operated on locations took the coordinates as different arguments, like: def __init__(self, from_col: str, from_row: int, to_col: str, to_row: int ...
However, I could alternatively use a Coordinate struct:

pub struct Coordinate {
    pub(crate) row: usize,
    pub(crate) col: char,
}

Which would be better in your view?

A struct is better. However, it's even better to have the struct internally store its coordinates as integers from 0 to 7 (or a single integer from 0 to 63). You can convert to and from strings by having the struct implement the FromStr and Display traits.

Thanks for your reply. The col field is a character to make development easier. When the board is fetching a square, it converts the col to a usize.
However, as I say this I can see that that's unnecessary overhead.