The turtle module using screen coordinates such that the vertical coordinate increases vertically on the screen. This orientation is different from the traditional orientation for graphics programs. It is possible to set coordinates with the "normal" orientation using the setworldcoordinates function, e.g. >>> from turtle import * >>> setworldcoordinates(0, 400, 400, 0) With the above choice, the y coordinate increases as the turtle moves down on the screen. However, doing so inverts the role of left() and right(). I have attached a "diff" file which introduces a change needed so that left() and right() behave correctly with this different orientation.
Hi aroberge, Thanks for filing this issue. I'm triaging all of the open 'turtle' issues. I'm closing this issue since introducing this suggested change would impact teaching materials and resources that have already been published. This would be a change that would break compatibility. I've marked the resolution as "Remind" if someone in the future wishes to open a documentation issue.
I am sorry to hear that this bug was closed based on the unproven assumption that this would impact teaching material. I have *never* seen any pedaggical material for the turtle module where the instructor wrote "use left() to have the turtle turn right, and vice-versa". I file the original bug report and the code to fix it based on a report on the edu-sig mailing list, more than 3 years ago https://mail.python.org/pipermail/edu-sig/2015-March/011207.html This bug makes it pedagogically unwise to set the coordinate system as described since a left() instruction makes the turtle turns right, and vice-versa. So, no one using the turtle module to teach can currently use this type of coordinate choice as it would be too confusing to students. The solution provided would have fixed that. If that is the final decision, then so be it - and I will advise people to use Brython's turtle module instead as it does not have this bug.