2013-11-03 3 views
0

오류 : 당신은 그들에게 "죽은암살자 게임 파이썬 우리는이 과제 주어진

는"각 플레이어가 단순히 말에 의해 암살 대상을 할당된다 암살자의 게임은 간단한 게임은 대학 캠퍼스에서 연주입니다 " 물론 캠퍼스에있는 수천 명의 사람들과 당신을 암살하려고하는 사람을 결코 모르는 게임은 겨우 몇 십만입니다. 당신이 누군가를 암살하고 나면 그들이 찾고 있던 목표를 취합니다. 이 작업을 제대로 수행하려면 대상이 연속적인 "체인"을 형성해야합니다. 사용자가 대상 지정을 입력하고 유효한지 여부를 출력 할 수있는 프로그램을 작성하십시오. "목록에있는 각 사람은 목록의 위치로 표시됩니다. 위치가 목표입니다. 예 : " 0 1 2 3 4 5 6
4 3 0 5 6 2 1 유효한 여기

내 코드입니다 :

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

I : 현재

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') 

,이 오류가 발생합니다 왜 그런지 모르겠지만 누군가이 오류 진술의 설명을 나에게 설명 할 수 있다면 크게 환영 할 것입니다. 또한이 코드에있는 다른 오류가 있으면 알려주십시오. 달성하기 위해서는 모든 seq 입력이 4305621 이외의 입력이라면, 프로그램은 그것이 유효하지 않다는 것을 출력 할 것입니다. 감사.

+1

다른 사람에게 숙제를 요청하지 마십시오. 전체 요점은 당신이 그것을 알아 내기위한 것입니다. –

+0

나는 나를 위해 코드를 작성하도록 다른 사람에게 요청하지 않습니다. 그것은 누군가에게 나의 숙제를하도록 요구할 것입니다. 나는 능력을 최대한 발휘하여 일을하고 누군가에게 나를 위해 조금 수정하도록 요청했다. 두 명을 혼란스럽게합니다. – user2950875

+1

좋습니다 ...하지만 도움을 받으려고 인터넷 검색을 시도하십시오. 이미 이런 질문이 많이 있습니다. –

답변

3

people 목록입니다. people[0] 그러나 정수입니다. 그리고 오류가 말한대로 반복 할 수 없기 때문에 len을 정수와 함께 사용할 수 없습니다. people의 길이가 0하지 않은 경우 당신이보고 싶은 경우

, [0] 제거 : 당신이 people[0]이 같지 0을 수행하는지 확인하려면,

if len(people)!=0: 

을 또는 len을 제거 :

if people[0]!=0: