2012-02-23 5 views
1

컴퓨터가 생각한 번호를 추측하려고 시도하는 간단한 파이썬 게임에서 일하고 있습니다. 정답을 추측 할 때마다 응답을 txt 파일에 저장합니다. 프로그램을 다시 실행하면 이전 답변을 먼저 추측합니다 (사용자가 지정한 범위 내에있는 경우).txt 파일에서 임의의 항목 그룹을 선택하십시오.

try: 
    f = open("OldGuesses.txt", "a") 
    r = open("OldGuesses.txt", "r") 
except IOError as e: 
    f = open("OldGuesses.txt", "w") 
    r = open("OldGuesses.txt", "r") 

data = r.read() 
number5 = random.choice(data) 
print number5 

이전 답변을 가져 오려면 하나의 항목을 가져옵니다. 내가 200, 1242, 1343이라는 숫자와 공간을 구분할 수있는 숫자와 함께 공간이나 하나의 숫자를 선택한다고 가정 할 때처럼 말입니다. 어떤 아이디어를 전체 숫자 (200)를 잡아 및/또는 공백을 따기 피하는 방법?

답변

1

r.read() 전화는 의 내용을 모두 r으로 읽은 다음 단일 문자열로 반환합니다. 라인에 파일을 파괴하고 정수로 각 라인을 변환

data = [int(x) for x in r.readlines()] 

을 : 당신이 할 수있는 것은 다음과 같이 r.readlines()와 조합에 지능형리스트를 사용합니다.

+0

감사합니다. btw가 완벽하게 작동하는 것처럼 보입니다. D 편집 : 테스트 됨, xP로 분류해야 함 – asqapro

관련 문제