□ import os : 모듈함수
○ os.path.exists(경로) : 경로 확인
○ os.makedirs(경로) : 경로에 디렉토리 생성
□ with open 함수를 사용하면 자동으로 close 처리가됨
○ w : writing 덮어쓰기
- write : 리스트 인덱스별 값만 작성
- writelines : 리스트의 모든 값을 한줄로 작성
*아래 예제코드 기준으로 말하는 것임
○ a : appending 추가
○ r : read 조회
#예제 : /source/26-1/경로에 name = 파일명 contents = 내용으로 파일을 작성하시오
import os
file_grp = ['A','B','C','D','F','G']
contents_list = ['Python','JavaScript','PHP','Rust','Solidity','Assembly']
contents_list2 = [['Python','JavaScript','PHP','Rust','Solidity','Assembly'],
['Python','JavaScript','PHP','Rust','Solidity','Assembly'],
['Python','JavaScript','PHP','Rust','Solidity','Assembly'],
['Python','JavaScript','PHP','Rust','Solidity','Assembly'],
['Python','JavaScript','PHP','Rust','Solidity','Assembly'],
['Python','JavaScript','PHP','Rust','Solidity','Assembly']]
#방법1
def write_method_first(filepath):
if not os.path.exists(filepath): # .path 함수 : 운영체제에 해당 경로가 있는지여부. not을 사용했기에 없다면~으로 해석
os.makedirs(filepath) # .makedirs 함수 : : 폴더 생성하기
# loop write
for n, c in zip(file_grp, contents_list):
with open(filepath + n + '.txt','w') as file: #파일지정
file.write(c)
print(f'write_method_first 결과 : {write_method_first("C:/Users/User/Downloads/python_basic_1.5/2.QnA/source/26-1/")}')
#방법2
def write_method_second(filepath):
if not os.path.exists(filepath): # .path 함수 : 운영체제에 해당 경로가 있는지여부. not을 사용했기에 없다면~으로 해석
os.makedirs(filepath) # .makedirs 함수 : : 폴더 생성하기
# loop write
for n, c in zip(file_grp, contents_list2):
with open(filepath + n + '.txt','w') as file: #파일지정
file.writelines(c) #.writelines() : 문자열로 이루어진 리스트의 모든 줄을 텍스트 파일로 쓰기
print(f'write_method_second 결과 : {write_method_second("C:/Users/User/Downloads/python_basic_1.5/2.QnA/source/26-2/")}')
'Python > Python_basic' 카테고리의 다른 글
[Python] 사용자 입력 처리 Taking Multiple Inputs (0) | 2023.11.06 |
---|---|
[Python] 멀티파일 읽기(read multiple files) (1) | 2023.11.06 |
[Python] 리스르 스플릿 Split Lists Into N Chunks (0) | 2023.11.03 |
[Python] 병렬처리(zip함수, 딕셔너리 컴프리헨션) (0) | 2023.11.03 |
[Python] 유니코드, 파일쓰기 및 String 패키지 (0) | 2023.11.03 |