필자는 파일에서 어떤 정보를 가져 오거나 여러 단계를 거쳐 최종 원하는 형식으로 데이터를 마사지해야하는 상황에 계속해서 직면합니다. 예를 들면 :불필요한 목록을 만드는 것을 피하는 방법은 무엇입니까?
에 나오는 위의 예def insight_pull(file):
with open(file) as in_f:
lines = in_f.readlines()
dirty = [line.split(' ') for line in lines]
clean = [i[1] for i in dirty]
cleaner = [[clean[i],clean[i + 1]] for i in range(0, len(clean),2)]
cleanest = [i[0].split() + i[1].split() for i in cleaner]
with open("Output_File.txt", "w") as out_f:
out_f.writelines(' '.join(i) + '\n' for i in cleanest)
:
# Pull raw data from file splitting on ' '.
dirty = [line.split(' ') for line in lines]
# Select every 2nd element from each nested list.
clean = [i[1] for i in dirty]
# Couple every 2nd element with it's predecessor into a new list.
cleaner = [[clean[i],clean[i + 1]] for i in range(0, len(clean),2)]
# Split each entry in cleaner into the final formatted list.
cleanest = [i[0].split() + i[1].split() for i in cleaner]
(각 편집이 전에 편집에 의존하기 때문에) 내가 한 줄 또는 루프로 모든 편집을 넣을 수 없습니다로보고 이런 식으로 코드를 구조화하는 더 좋은 방법이 있을까요?
질문이 다소 모호한 경우 사과드립니다. 모든 입력을 많이 주시면 감사하겠습니다.
을 기술적으로, 당신은 잘못이 지능형리스트를 할 수 있기 때문에 당신이 모두 한 줄에서이 작업을 수행하지 못할 것을 말하는 다른 목록을 작성하면 출력되지만, 그렇게하면 안됩니다. –
일부 샘플 입력 및 출력을 표시 할 수 있습니까? – pault
불행히도 일부 데이터는 민감하지 않지만 위의 예는 요점을 설명하기위한 것입니다. 이런 종류의 문제가 계속 발생하고 있습니다. – blackmore5