728x90
반응형
0 0 0 0 NONE NONE과
-1
사이에 오는 숫자들을 data로 만듬
f = open('data08.txt', 'r') # 파일 읽기
line = f.readlines()
f.close()
data = [] # 최종 데이터를 담을 리스트 변수
find_flag = False # 처음 시작 문자열을 찾았다는 변수
row_tmp = [] # 실제 데이터로 만들 여러 라인에서 각 라인 데이터를 보관 할 임시 리스트변수
for L in line: # 파일의 각 라인을 읽음
tmp = [] # 한 라인의 임시 리스트 변수
# print(L)
if L.find("0 0 0 NONE") != -1: # 이 라인에 이런 문자열이 있으면
find_flag = True # 찾았다고 표시
row_tmp = [] # 데이터로 할 임시 리스트 변수 초기화
elif find_flag == True: # 찾은 다음 라인부터 데이터로 취급
# print('>>',L)
if L.find(" -1") != -1: # 이런 문자열을 찾으면 종료
ss = '' # 데이터로 할 여러 라인을 리스트로 담겨져 있어서 이를 문자열로 만든 후 다시 리스트로 처리하기 위한 문자열 변수
for r in row_tmp: # 여러 라인의 데이터에서 각 라인의 [[],[]..]와 같이 되어 있어서 이를 풀기 위해서
ss += ','.join(r) # ,로 구분된 문자열로 만듬. 전체를 하나의 문자열로 합함.
# print('>>', ss)
data.append(ss.split(',')) # 문자열을 , 로 분리해서 data에 추가
find_flag = False # 다시 처음을 찾을 수 있도록 flag = False로 해줌
tmp = L.split('\t') # 데이터로 만들 한 라인의 tmp 임시 리스트 변수에 탭으로 분리해서 담음
row_tmp.append(tmp) # 한 줄 데이터에 추가 해둠
for i in range(len(data)):
print(data[i])
728x90
반응형
'프로그램' 카테고리의 다른 글
[C언어] 문제 : 4개의 정수 입력 받아 가장 작은 수 찾기 (0) | 2023.05.10 |
---|---|
[파이썬] 문제 : 3개의 text 파일에서 빠진 날짜 처리해서 merge (0) | 2023.05.09 |
[파이썬] 문제 : 터틀(turtle) 그린 그림의 대칭으로 그리기 (0) | 2023.05.09 |
[C언어] 주사위 n번 던져서 1~6 각 수의 빈도와 확률 구하기 (0) | 2023.05.09 |
[파이썬] 문제 : 주사위 3번 던져서 합을 구하는데 1 이면 다음번 수는 합하지 않고 6이면 다음번 수는 2배로 합 구하기 (0) | 2023.05.09 |
댓글