# 파일 열기: open()
# 'w' 모드 ➡ 파일이 없으면 파일을 생성함
file = open('C:/Users/file.txt', 'w')
# 쓰기: write()
# 'w' ➡ 기존 텍스트는 삭제되고 새로운 텍스트가 덮어 씌움
# 작성한 텍스트 길이가 반환됨
strCnt = file.write('Hello Python')
# 파일 닫기: close()
file.close()
# 파일 열기: open()
# 'r' 모드 ➡ 파일이 없으면 error!
# cp949 발생하면 ➡ encoding='UTF8' 추가
file = open('C:/Users/file.txt', 'r')
# 읽기: read()
# 문자열로 읽어짐
str = file.read()
print(f'파일 내용: {str}')
# 파일 닫기: close()
file.close()
'w'(write) - 쓰기 전용(파일이 있으면 덮어 씌움)
'a'(append) - 쓰기 전용(파일이 있으면 덧붙임)
'x'(create) - 쓰기 전용(파일이 있으면 에러 발생)
'r'(read) - 읽기 전용(파일이 없으면 에러 발생)
with open('C:/Users/file.txt', 'a') as f:
f.write('내용을 입력하세요.\n')
with open('C:/Users/file.txt', 'r') as f:
print(f.read())
numbers = ['10', '20', '30']
with open('C:/Users/file.txt', 'a') as f:
f.writelines(numbers)
>>>
102030
numbers = ['10', '20', '30']
with open('C:/Users/file.txt', 'a') as f:
f.writelines(item + '\n' for item in numbers)
>>>
10
20
30
# file.txt
hello python
not easy
but funny!
# readlines(): 모든 데이터를 읽어서 한 줄씩 리스트 형태로 반환
with open('C:/Users/file.txt', 'r') as f:
text = f.readlines()
print(text)
print(type(text))
>>>
['hello python\n', 'not easy\n', 'but funny!\n']
<class 'list'>
# readline(): 한 행을 읽어서 문자열로 반환
with open('C:/Users/file.txt', 'r') as f:
# 맨 처음에 첫 줄을 읽고,
line = f.readline()
# 첫 줄에 내용이 있다면(공백이 아니라면) 실행
while line != '':
print(f'{line}', end='')
line = f.readline()
print(line) # 마지막에 읽은 곳에는 공백이 있음
print(type(line))
>>>
hello python
not easy
but funny!
<class 'str'>
import time
lt = time.localtime()
# %H - 17시
# %I - 5시
dateStr = '[' + time.strftime('%Y-%m-%d %H:%M:%S %p') + ']'
print(dateStr)
>>>
[2023-11-08 18:10:39 PM]
# replace(대상 문자열, 변경할 문자열)
text = '나는 오늘 아침에 샌드위치 먹었어. 너는 아침 뭐 먹었어?'
text = text.replace('아침', '저녁')
print(text)
>>>
나는 오늘 저녁에 샌드위치 먹었어. 너는 저녁 뭐 먹었어?
# replace(대상 문자열, 변경할 문자열, 변경할 횟수)
text = '나는 오늘 아침⭕에 샌드위치 먹었어. 너는 아침❌ 뭐 먹었어?'
text = text.replace('아침', '저녁', 1)
print(text)
>>>
나는 오늘 저녁에 샌드위치 먹었어. 너는 아침 뭐 먹었어?
text = 'kor:85'
result = text.split(':')
print(result)
>>>
['kor', '85']