You could answer it either way but the method solved in the textbook is correct. By choosing \$V_{base1}\$ as the initial base voltage, the other zones are calculated from there. You could, alternatively, select \$V_{base3}\$ as the initial base voltage and you'd end up with 230 V, 460 V, and 115 V as the base voltages. For added clarity, we could ignore the ratings of the transformers entirely when selecting the base voltages and just say that \$ V_{base1} = 1000 V \$. Choosing the transformer voltage as a base voltage is just to simplify the problem.
When the zone voltage doesn't match the transformer voltage, you'll have to convert the impedance of the transformer. The book does this if you follow along in the solution. You could apply the 1000 V rating to this question as well, and solve per unit impedances for both transformers.
I'm not familiar with pandapower or PyPSA but my assumption would be that the voltages on the transformer do not change, and instead the software is converting the transformer impedance to match the base voltages. In reality, if a transformer is built to 240/480, you cannot change that rating. If the software is trying to force two different base voltages into the same zone, it's not very good software.