gpt4 book ai didi

python - 我不断收到错误 : TypeError: integer argument expected, 在 Python 3.6.5 中 float

转载 作者:太空宇宙 更新时间:2023-11-04 09:40:03 25 4
gpt4 key购买 nike

我使用的是从 Python.org 下载的 Python 3.6.5 版。在编程时,我不断收到错误 TypeError: integer argument expected, got float。我正在使用 Python 版本 3.6.5,win 32 位。这是我的完整代码(仍待处理):

import pygame

pygame.init()

black = (0,0,0)
white = (255,255,255)
red = (255,0,0)
blue = (0,0,255)
sky_blue = (0,150,225)
green = (0,255,0)

displayWidth = 800

displayHeight = 600
#Final :- pygame.display.set_mode((1365, 1050))
gameDisplay = pygame.display.set_mode((displayWidth,displayHeight))
pygame.display.set_caption('Super Mario')
clock = pygame.time.Clock()

crashed = False

timeOut = False

Quit = False

#50,75
marioStanding = pygame.image.load('Super_Mario_Standing.jpg')
marioStanding = pygame.transform.scale(marioStanding, (displayWidth/40,displayHeight/8))

def Stand(x,y):
gameDisplay.blit(marioStanding,(x,y))

x = (displayWidth * 0.45)
y = (displayHeight * 0.8)

while not crashed and not timeOut and not Quit:

for event in pygame.event.get():
if event.type == pygame.QUIT:
Quit = True

print (event)

gameDisplay.fill(sky_blue)
Stand(x,y)

pygame.display.update()
clock.tick(24)

pygame.quit()
quit()

在删除高度和宽度为 50,75 并将其替换为 displayWidth/40, displayHeight/8 之前,我没有收到任何错误,所以我猜测与此有关。这是完整的错误:

Traceback (most recent call last):
File "C:\Users\Dell\Desktop\Super_Mario_Python3.6\Billionth_Pygame_Test.py", line 28, in <module>
marioStanding = pygame.transform.scale(marioStanding, (displayWidth/40,displayHeight/8))
TypeError: integer argument expected, got float

最佳答案

欢迎使用 python 3 浮点除法。这里:

pygame.transform.scale(marioStanding, (displayWidth/40,displayHeight/8))

你的除法,即使是在整数之间进行,也会创建一个 float 元素的元组。

>>> 200/40
5.0

使用整数除法将它们保持为整数(在 python 2 中不是这种情况),因此 scale 函数接受它们作为参数。

>>> 200//40
5

像这样:

pygame.transform.scale(marioStanding, (displayWidth//40,displayHeight//8))

注意:它也适用于 python 2。

关于python - 我不断收到错误 : TypeError: integer argument expected, 在 Python 3.6.5 中 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52066118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com