I am pretty new to programing myself but i found a rather smooth way of making a turtle walk across the screen without it "jumping" around, well its as smooth as i could get it.
import turtle
move = True
tim = turtle.Turtle("turtle")
tim.color("black","light green")
tim.penup()
window = turtle.Screen()
def up():
global move
if move == True:
move = False
tim.setheading(90)
tim.forward(30)
move = True
def down():
global move
if move == True:
move = False
tim.setheading(270)
tim.forward(30)
move = True
def left():
global move
if move == True:
move = False
tim.setheading(180)
tim.forward(30)
move = True
def right():
global move
if move == True:
move = False
tim.setheading(0)
tim.forward(30)
move = True
window.listen()
turtle.onkeypress(up, "w")
turtle.onkeypress(down, "s")
turtle.onkeypress(left, "a")
turtle.onkeypress(right, "d")
turtle.mainloop()
By just seeing the peice of code its simple to understand but imagine it as once you press the button, every moment it is pressed your telling the turtle to move in that direction while its pressed. It jumps becouse its constantly being told to move before its even done moving. By doing this whole True and False thing allows the turtle to move, then move once the first action is done.
feel free to test the code and see for yourself!
There is probably a better way of doing this but i hope this helped somehow.