我正在使用 PyGame 在 python3.6.5 中创建 Snake Game。这是初始代码,在 PyCharm 上 运行 很好。但我在 VSCode 中遇到问题
I am creating Snake Game in python3.6.5 using PyGame. Here is the initial code and it is running well on PyCharm. But I am getting problems in VSCode
import pygame
pygame.init()
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
gameDisplay = pygame.display.set_mode((800, 600))
pygame.display.set_caption('Snake')
gameExit = False
lead_x = 300
lead_y = 300
lead_x_change = 0
lead_y_change = 0
clock = pygame.time.Clock()
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
gameExit = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
lead_x_change = -10
lead_y_change = 0
elif event.key == pygame.K_RIGHT:
lead_x_change = 10
lead_y_change = 0
elif event.key == pygame.K_UP:
lead_y_change = -10
lead_x_change = 0
elif event.key == pygame.K_DOWN:
lead_y_change = 10
lead_x_change = 0
if lead_x >= 750 or lead_y >= 599 or lead_y < 0 or lead_x < 0:
gameExit = True
lead_x += lead_x_change
lead_y += lead_y_change
gameDisplay.fill(white)
pygame.draw.rect(gameDisplay, black, [lead_x, lead_y, 10, 10])
pygame.display.update()
clock.tick(15)
pygame.quit()
quit()
我在 VSCode 中遇到以下问题:
E1101:Module 'pygame' 没有 'init' 成员
E1101:Module 'pygame' 没有 'K_RIGHT' 成员
E1101:Module 'pygame' 没有 'QUIT' 成员
E1101:Module 'pygame' 没有 'KEYDOWN' 成员
E1101:Module 'pygame' 没有 'K_LEFT' 成员
E1101:Module 'pygame' 没有 'quit' 成员
E1101:Module 'pygame' 没有 'K_DOWN' 成员
E1101:Module 'pygame' 没有 'K_UP' 成员
为什么 VScode 显示这些问题而 PyCharm 显示没有错误和问题?
这些消息是由pylint 生成的。出于安全原因,Pylint 默认禁用加载 C 扩展(在本例中为 Pygame)。要启用它,请将其添加到您的设置中:
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=pygame"
]
如果你的其他设置正确,这应该足够了。
import pygame
pygame.init()
white = (255, 255, 255)
black = (0, 0, 0)
red = (255, 0, 0)
gameDisplay = pygame.display.set_mode((800, 600))
pygame.display.set_caption('Snake')
gameExit = False
lead_x = 300
lead_y = 300
lead_x_change = 0
lead_y_change = 0
clock = pygame.time.Clock()
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
gameExit = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
lead_x_change = -10
lead_y_change = 0
elif event.key == pygame.K_RIGHT:
lead_x_change = 10
lead_y_change = 0
elif event.key == pygame.K_UP:
lead_y_change = -10
lead_x_change = 0
elif event.key == pygame.K_DOWN:
lead_y_change = 10
lead_x_change = 0
if lead_x >= 750 or lead_y >= 599 or lead_y < 0 or lead_x < 0:
gameExit = True
lead_x += lead_x_change
lead_y += lead_y_change
gameDisplay.fill(white)
pygame.draw.rect(gameDisplay, black, [lead_x, lead_y, 10, 10])
pygame.display.update()
clock.tick(15)
pygame.quit()
quit()
我在 VSCode 中遇到以下问题:
E1101:Module 'pygame' 没有 'init' 成员
E1101:Module 'pygame' 没有 'K_RIGHT' 成员
E1101:Module 'pygame' 没有 'QUIT' 成员
E1101:Module 'pygame' 没有 'KEYDOWN' 成员
E1101:Module 'pygame' 没有 'K_LEFT' 成员
E1101:Module 'pygame' 没有 'quit' 成员
E1101:Module 'pygame' 没有 'K_DOWN' 成员
E1101:Module 'pygame' 没有 'K_UP' 成员
为什么 VScode 显示这些问题而 PyCharm 显示没有错误和问题?
这些消息是由pylint 生成的。出于安全原因,Pylint 默认禁用加载 C 扩展(在本例中为 Pygame)。要启用它,请将其添加到您的设置中:
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=pygame"
]
如果你的其他设置正确,这应该足够了。