This is converting each character in the string p to a Float64 (using the numeric value of the character’s Unicode codepoint), which sounds like it is not what you want.
Of course, there are many ways to do what you want, e.g.
parsetuple(s::AbstractString) = Tuple(parse.(Float64, split(s, ',')))
will work on comma-delimited strings like "1.1, 2.2". If you want to handle brackets too you’ll need to work a little harder to strip those off.
What is the context here? Why are you passing around small tuples of numbers in string form?
PS. A tuple may be a poor choice of data structure in a context like this where the length is determined at runtime. Normally one would use an array in such cases.