在继续python学习的时候,发现报错了!出现错误argument 1 must be 2-item sequence, not int,明明我是照着书打的,为什么会出现错误呢。查看代码,发现最上面的引用类出现红色波浪线,但是原因应该不是这个,因为他并没有报出错误。

import pygame
import sys
from setting import Settings
def run_game():
#初始化游戏并且创建一个屏幕对象
pygame.init() #初始化背景属性
ai_settings = Settings()  #使类setting里的内容直接被调用

# screen = pygame.display.set_mode((1200, 800)) #定义窗口大小

screen = pygame.display.set_mode(ai_settings.screen_width, ai_settings.screen_height)
pygame.display.set_caption("Alien Invasion") #窗口名字

# 设置背景颜色

# bg_color = (230, 230, 230)

#开始游戏的主循环
while True:
#监视鼠标和键盘事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.fill(ai_settings.bg_color) #将颜色填充进去
#让最近绘制的屏幕可见
pygame.display.flip()
run_game()

继续查看

Traceback (most recent call last):
File "D:/Python-work/pythonrumen/2020/11/newtravel.py", line 22, in <module>
run_game()
File "D:/Python-work/pythonrumen/2020/11/newtravel.py", line 9, in run_game
screen = pygame.display.set_mode(ai_settings.screen_width, ai_settings.screen_height)

问题出现在第9和22行,第22行是启动游戏,无所谓,那么问题就在第9行了,screen = pygame.display.set_mode(ai_settings.screen_width, ai_settings.screen_height) 仔细对比发现,我的数据少了一个圆括号,通过百度查询,得知报错为参数为元组不是int类型,所以给参数添加一个圆括号即可。运行成功。

import pygame
import sys
from setting import Settings
def run_game():
#初始化游戏并且创建一个屏幕对象
pygame.init() #初始化背景属性
ai_settings = Settings()  #使类setting里的内容直接被调用

# screen = pygame.display.set_mode((1200, 800)) #定义窗口大小

screen = pygame.display.set_mode((ai_settings.screen_width, ai_settings.screen_height))
pygame.display.set_caption("Alien Invasion") #窗口名字

# 设置背景颜色

# bg_color = (230, 230, 230)

#开始游戏的主循环
while True:
#监视鼠标和键盘事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.fill(ai_settings.bg_color) #将颜色填充进去
#让最近绘制的屏幕可见
pygame.display.flip()
run_game()

通过以上问题得知,原来有许多的报错其实是因为自己的不仔细,不是漏符号了,就是中英文错误,需要养成一个良好的编写习惯!

本文作者:博主:     文章标题:python argument 1 must be 2-item sequence, not int
本文地址:https://zjzdmc.top/jsfx/39.html     
版权说明:若无注明,本文皆为“Datehoer的Blog-个人博客-技术分享”原创,转载请保留文章出处。
最后修改:2021 年 04 月 20 日 10 : 34 AM
如果觉得我的文章对你有用,请随意赞赏