即使代码正确执行,Python Turtle也会出现Pylint错误

时间:2020-07-10 19:49:59

标签: python visual-studio-code pylint python-turtle

Import Head from 'next/head'
<Head> 
<title>{dynamicValue}</title></Head>

考虑到上面的代码(在VSCODE中运行),我想知道如何摆脱所有继续弹出的“ pylint”错误,这些错误提示类似于以下内容:

import turtle 


class Polygon: 
    def __init__(self,sides,name,size=100,color='black',line_thickness=3):
        self.sides=sides
        self.name=name 
        self.size=size
        self.color=color
        self.line_thickness=line_thickness
        self.interior_angles=(self.sides-2)*180
        self.angle=self.interior_angles/self.sides
    
    def draw(self):
        turtle.color(self.color)
        turtle.pensize(self.line_thickness)
        for i in range(self.sides): 
            turtle.forward(self.size)
            turtle.right(180-self.angle)
        turtle.done()

square=Polygon(4,'Square')
square.draw()

尽管代码执行得很好,但是继续查看错误行令人不安,我想知道是否有解决方案。谢谢您的时间!

1 个答案:

答案 0 :(得分:0)

为什么不修正错误代码,而不是抑制错误消息? Turtle提供了两个API,一个是 functional ,另一个是 object-oriented 。功能对象是在 load 时从面向对象的对象中派生的。分析工具无法在源库文件中查找并查看功能签名。

由于您正在定义自己的Polygon 对象,所以我不明白为什么您不使用面向对象的界面来进行龟。我在下面使用的import阻塞了功能接口,只允许访问面向对象的接口:

from turtle import Screen, Turtle

class Polygon:
    def __init__(self, sides, name, size=100, color='black', line_thickness=3):
        self.sides = sides
        self.name = name
        self.size = size
        self.color = color
        self.line_thickness = line_thickness
        self.interior_angles = (self.sides - 2) * 180
        self.angle = self.interior_angles / self.sides

    def draw(self):
        turtle.color(self.color)
        turtle.pensize(self.line_thickness)

        for _ in range(self.sides):
            turtle.forward(self.size)
            turtle.right(180 - self.angle)

screen = Screen()
turtle = Turtle()

square = Polygon(4, 'Square')
square.draw()

screen.exitonclick()

请注意对代码的细微更改,以适应面向对象的API。现在,尝试对代码进行分析,看看这是否可以解决您的问题。