TypeError: add() argument after * must be an iterable, not Alien
今天做《Python 入门编程》的 pygame 小游戏《外星人入侵》,写到创建一行外星人是出现该错误,网上查了半天都是拼写错误
我看了我的没有错误,最后在花费了一小时的时间找出了问题:少了一个‘s’
iterable是可迭代,而我在game_functions.py定义create_fleet时:
将:
aliens.add(alien) (正确写法)
写成:
alien.add(alien)
aliens是我在主函数创建的一个编组,里面存储alien,而alien是一个实例,是不可迭代的。