首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >刺客游戏Python错误

刺客游戏Python错误
EN

Stack Overflow用户
提问于 2013-11-03 23:29:51
回答 1查看 648关注 0票数 0

我们的任务是:

“刺客的游戏是一个简单的游戏,在大学校园中,每个玩家被分配一个目标暗杀简单地说”你死了“。当然,有成千上万的人在校园里,只有几十人在游戏中,你永远不知道谁想刺杀你。一旦你暗杀了他们要找的目标的人。如果这碰巧是你,那么你就是赢家。为了确保这一工作正常进行,目标必须形成一个连续的“链”。编写一个程序,允许用户输入他们的目标分配并输出,不管它是否有效。基于是否有一个连续的“链”。列表中的每个人都以列表中的位置表示。这个位置的价值是他们的目标。0 1 2 3 4 5 6

4 3 0 5 6 2 1有效

这是我的代码:

代码语言:javascript
复制
people=[]
steps=[]
valid=True

while True:
    person=int(input("Enter the target(-1 to exit):"))
    if person==-1: break
    people.append(person)

for i in range(len(people)):
    if len(people[0])!=0:
        valid=False
        break
    elif len(people[0])==0: break
    steps.append(people[0])

for i in range(len(jumps)):
    if jumps[i-1]==jumps[i]:
        valid=False
if valid==False:                 #program MUST check if the flag is false before checking for length
    print('invalid')             #of the jumps list compared to the victims list.
elif len(jumps)==len(victims):
    print('valid')
elif len(jumps)!=len(victims):
    print('invalid')

目前,我得到了以下错误:

代码语言:javascript
复制
File "C:/Users/Wisdom1/Desktop/ListAssign6.py", line 14, in 
<module>
if len(people[0])!=0:
TypeError: object of type 'int' has no len()

我不知道这是为什么,但如果有人能向我解释这一错误声明的发生,那将是非常感谢的。另外,如果这段代码中还有其他错误,请告诉我。我想要实现的输出是,除4305621以外的任何序列输入,程序将输出它是无效的。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-03 23:36:59

people是一个列表。然而,people[0]是一个整数。而且,正如您的错误所述,您不能在整数中使用len,因为它们是不可迭代的。

如果要查看people的长度是否为0,请删除[0]

代码语言:javascript
复制
if len(people)!=0:

或者,如果要查看people[0]是否等于0,请删除len

代码语言:javascript
复制
if people[0]!=0:
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19759513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档