2013-07-22 5 views
0

임 게임에 대한 mapeditor를 작성하고 메신저 파일 마우스가 이상하다하는 구형을하고 복사됩니다문제 목록을 반복하고 파일

그래서 메신저 쓰기 복사 기능에 정보를 기록하는 데 문제가 쓰기 다른 장소 이미지 경로를 유지하지만, 그것을 새로운 좌표를 제공하고, 표면리스트

에 추가로 내가 그 일을 가지고하지만 난 파일에 기록하려고 할 때 문제가 여기

가 for 루프입니다 쓰는 방법 :

목록 지수

제가 추가하는 시도 범위

벗어나도록 923,210

문제가 이미지보다 더 구형이 거기 self.surface_paths[index]에 있도록 (나 이미지를 복사 becuase) 이미지보다 표면 (의 구형)이있는 않습니다 if index < len(self.surface_paths):하지만 메신저는 2 개 개의 다른 이미지

를 사용하기 때문에이 파일 만에 처음 2 개의 구형을 기록 그래서 그것을 만드는

사람이 내가 경로 목록이 범위를 벗어나려고 밖으로 파일에의 구형을 쓸 수있는 방법을 말해 줄 수

고맙습니다!

+0

그것은 소리 만하지 않습니다. 파일 IO와 관련이 없으며 데이터 조작과 관련이 있습니다. – Mai

+0

그래서 표면 목록에서 rect를 복사 할 때 이미지 이름도 복사해야합니다. – Serial

+0

'surface_list' 대신 점 목록 (목록을 작성한 것 같습니다) 목록을 만들어 목록 목록의 목록으로 만드십시오 점들에 사용 된 인덱스와'surface_paths'는 동기화 상태를 유지합니다. – martineau

답변

1

이 직접 귀하의 질문에 대답하지만 당신이 완료된 현재 함수 후 surface_list 및/또는 surface_paths에 액세스 할 수 있도록하려면, 당신은 pickle를 사용하여 고려하지 않는다?

import cPickle as pickle #cPickle is faster than pickle 
#To save 
savePth = '' #Save file path 
f = open(savePth, 'w') #w for "write" 
pickle.dump(self.surface_list, f) 
f.close() 

이제 변수는 savePth이 가리키는 파일에 저장됩니다. 로드하려면 : self.surface_list가 self.surface_paths 같은 크기의 같은 수 있어야한다처럼

import cPickle as pickle 
#To load 
f = open(savePth, 'r') #r for "read" 
self.surface_list = pickle.load(f) 
f.close() 
관련 문제