Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

E1101:Module 'turtle' has no 'forward' member

I'm new to programming and I downloaded Python and got it running in Visual Studio Code. I was messing around with the turtle module and its functions.

The functions themselves work but pylint marks it as an error and says that there isn't a "member" like what I coded.

How would I go about fixing this error? (I don't want to set it to "ignore" the issue but rather recognize that the code I'm typing in is valid and comes from the turtle module)

like image 948
bulldogs586 Avatar asked Oct 20 '18 05:10

bulldogs586


1 Answers

The turtle module exposes two interfaces, a functional one and an object-oriented one. The functional interface is derived programatically from the object-oriented interface at load time, so static analysis tools can't see it, thus your pylint error. Instead of the functional interface:

import turtle

turtle.forward(100)

turtle.mainloop()

For which pylint generates no-member, try using the object-oriented interface:

from turtle import Screen, Turtle

screen = Screen()

turtle = Turtle()

turtle.forward(100)

screen.mainloop()

This particular import for turtle blocks out the functional interface and I recommend it as folks often run into bugs by mixing both the OOP and functional interaces.

like image 186
cdlane Avatar answered Sep 25 '22 13:09

cdlane