2016-08-22 1 views
1

파이썬 코드를 실행하려고하는데 오류가있는 것 같습니다. (표준 내장이'builtin_function_or_method'객체에 대한 비헤이비어가 속성 오류가 없습니다.

Traceback (most recent call last):

File "D:\TestsPython\TicTacToe.py", line 65, in randomPlace if len.pos() != 0: AttributeError: 'builtin_function_or_method' object has no attribute 'pos'

+6

'len (pos) '을 원하셨습니까? –

+0

아, 너무 바보 같아서 고마워. –

답변

1

표현 len.pos()len을 찾기 위해 통역을 요청 : 10 자와 lis와 목록 오류 4 개 정수를 목록입니다입니다

def randomPlace(b,lis): 
    pos = [] 
    for i in lis: 
     if available(b,i): 
      pos.append(i) 

    if len.pos() != 0: 
     return random.choice(pos) 
    else: 
     return None 

b 나에게 도와주세요 함수에서) pos 속성 (단서가 없습니다)과 그 결과를 찾은 호출을 찾습니다. 당신은 실제로 pos의 값으로 len 기능을 적용 할, 따라서 코드

if len(pos) != 0: 

렌은 항상 정수 결과를 반환하기 때문에, 당신은하지만,

if len(pos): 

기억하는이를 생략 할 수 있습니다. 그 빈 용기는 Boolen 컨텍스트에서 거짓 evvaluate 및 비 빈 용기는 진정한 평가는

if pos: 
1

사용 len(pos)이를 단축하는 것이 일반적이다.

파이썬에서 목록의 크기를 찾으려면 구문은 len(your_list)입니다.

귀하의 경우에는 len 기능이 필요하지 않습니다. 당신은 간단하게 할 수 있습니다

if pos: 
    return random.choice(pos) 
else: 
    return None 

귀하의 목록에있는 모든 요소를 ​​사용할 경우에 때문에, ifTrue로 간주합니다. 빈 목록의 경우 False으로 처리됩니다.

관련 문제