텍스트 파일 출력하기

조회수 816회

이미지

사진안에 있는 ALE.txt 파일을 파이썬으로 output.txt 처럼 출력하려고 파이썬으로 작업해봤는데, 어느정도 가니까 막혀서 진행이 안되네요.. 도움주실수 있을까요
제가 대충 만들어보긴 했는데 여기서부터 어떻게 해야할지 모르겠네요..맞는지도 모르겠네요..

infile1=open("ALE.txt","r")

infile2=open("output.txt","w")

str1="Team\t\twon\t\tlost\t\tpercentage"

infile2.write(str1)

for line in infile1:

    list=line.split(",")
  • 솔직히 말씀드리면, 해당 txt 파일 확장자를 csv로 바꿔서 엑셀에서 정렬하면 원하는 것은 달성이 됩니다. 진짜 문제가 뭔가요? 엽토군 2019.5.23 15:23

3 답변

  • 이미지 아무리 노력해도 이런식으로 밖에 출력이 되질 않아요 ㅠㅠ 더 좋은 방법 없을까요.. 도와주시면 너무 감사하겠습니다..!

    • (•́ ✖ •̀)
      알 수 없는 사용자
  • 퍼센트 구하기가 어려운 건가요?

    round(won/(won+lost), 3)

    하면 됩니다.

    다음이 sort 인가요?

    In [1]: L = [('a', 3), ('b', 2), ('c', 1)]                                      
    
    In [2]: from operator import itemgetter                                         
    
    In [3]: L.sort(key=itemgetter(1))                                               
    
    In [4]: L                                                                       
    Out[8]: [('c', 1), ('b', 2), ('a', 3)]
    
  • 아래 코드를 참고하셔서 더 간단하게 코딩해 보시구 공유해주세요...

    f = open('c:/Users/USER/Desktop/ALE.txt','r')
    s = f.read().split('\n')
    f.close()
    
    str1="Team        won         lost        percentage\n"
    
    f2 = open('c:/Users/USER/Desktop/output.txt','w+')
    f2.write(str1)
    
    for i in s:
        i = i.split(',')
        i.append('%0.3f' %(int(i[1])/(int(i[1])+int(i[2]))))
        for j in range(len(i)):
            i[j] = i[j] + ' '*(12-len(i[j]))
            f2.write(i[j])
        f2.write('\n')
    
    f2.seek(0)
    for k in f2:
        print(k)
    
    f2.close() 
    
    >>> ==================== RESTART: C:/Users/USER/Desktop/b.py =============
    Team        won         lost        percentage
    
    Baltimore   96          66          0.593       
    
    Boston      71          91          0.438       
    
    New York    84          78          0.519       
    
    Tampa Bay   77          85          0.475       
    
    Toronto     83          79          0.512  
    
    
    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)