Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jennyonjourney/e3a7b0ef56b782bd01eede01706cf9a3 to your computer and use it in GitHub Desktop.
Save jennyonjourney/e3a7b0ef56b782bd01eede01706cf9a3 to your computer and use it in GitHub Desktop.
Python - file read/readline/readlines()
#readline()함수
#한글을 읽으려면 꼭 utf-8을 잊지말자.
fa=open('../fff/aaa.txt','r', encoding='utf-8')
dd=fa.read()
fa.close()
print(dd)
#한글을 읽으려면 꼭 utf-8을 잊지말자.
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
print(dd)
#한줄로 나열하기 위해 split함수를 사용한다.
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
studs = dd.split('\n')
print(studs)
#지저분해서 앞의 열의 이름을 슬라이싱으로 지운다.
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
studs = dd.split('\n')[1:-1]
print(studs)
#예쁘게 다시만들자 열 이름 제거하고
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
studs = dd.split('\n')[1:-1]
for st in studs:
print(st)
# 콤마기준 끊어버리기
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
studs = dd.split('\n')[1:-1]
for st in studs:
mem = st.split(',')
print(mem)
# 학생이름만 알고싶어요
fa=open('../fff/stud.csv','r')
dd=fa.read()
fa.close()
studs = dd.split('\n')[1:-1]
for st in studs:
mem = st.split(',')
print(mem[0])
#read의 함수는 평서문에 적합하다. (기사원문 잘라올때) 근데 이런 엑셀 테이블은 read가 적합하지 않다.
---------------------------------------------------------------------------------------------
#news기사는 read가 적합하다.
fa=open('../fff/news.txt','r')
data=fa.read()
fa.close()
ww=data.replace('.','').replace(',','').replace('"','').replace('','').split(' ') #점을 없애주는 방법
for i in ww:
print(i)
dic = {}
for i in ww:
cnt=0
dic[i] = cnt
for kk in dic:
print(kk, dic[kk])
print('----------------------')
for i in ww:
cnt=1
if i in dic:
cnt+=dic[i]
dic[i] = cnt
for kk in dic:
print(kk, dic[kk])
print('-------sorted-------')
for i in ww:
cnt=1
if i in dic:
cnt+=dic[i]
dic[i] = cnt
print('\n-----list형만들기-----\n')
keys=list(dic.keys())
print('\n-----key를 프린트해보자----\n')
print(keys)
# key로 따로 빼서 key를 정렬하고, 출력 for문에서 dic대신에 keys를 하는 것이다.
print('\n-----key를 정렬해보자----\n')
keys.sort()
print('\n-----정렬된 key를 프린트해보자----\n')
print(keys)
print('\n-----for문으로 key를 프린트해보자----\n')
for kk in keys:
print(kk, dic[kk])
#newscnt로 저장하기.
f = open('../fff/newscnt.txt','w',encoding='utf-8')
for kk in keys:
print(kk,dic[kk])
f.write(kk+":"+str(dic[kk])+"\n")
f.close()
#숫자를 별표로 바꾸기
f = open('../fff/newscnt.txt','w',encoding='utf-8')
for kk in keys:
print(kk,dic[kk])
f.write(kk+":"+str(dic[kk]*'★')+"\n")
f.close()
--------------------------------------------------------------------------------
#readline은 맨 위의 한 줄만 갖고 오는 것이다.
#빅데이터를 가져와줘 readlines, 하나씩 가져올때는 readline
#보통 데이터 분석은 readline을 많이 쓴다.
fa=open('../fff/stud.csv','r')
dd=fa.readline()
fa.close()
print(dd)
------------------------------------------------------------------------------
### read의 함수는 평서문에 적합하다.
### 기사원문 잘라올때) 근데 이런 엑셀 테이블은 read가 적합하지 않다.
fa=open('../fff/stud.csv','r')
dd=fa.readlines()
fa.close()
print(dd)
#줄별로 끊어서 'lit'형으로 나온다
for st in dd:
print(st)
#readlines=줄별로 잘라서 갖고 온다.
#맨마지막버리고 싶다. 즉 n을 버리는 거지요
for st in dd:
print(st[:-1])
print('----열명을 버리고 오고 싶다.---')
#열명을 버리고 오고 싶다.
for st in dd[1:]:
print(st[:-1])
--------------------------------------------------------------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment