Python/개념정리

파이썬 파일 입출력 실습

Itchild 2024. 5. 7. 16:21
728x90
반응형

 

### 문제 1
## aList=['사과',12000,'바나나',3900,'키위',5400]
## aList.txt를 생성해주세요.
## 사과는(은) 12000원입니다.
 
 

 

✔️ 슈도코드

 

과일이름 는(은) 가격 입니다 줄바꿈

언제 까지 ? 리스트크기만큼

 

과일이름 자리 0 , 2 , 4 번 인덱스 자리

가격 1 , 3 , 5 번 인덱스자리

 

## aList=['사과',12000,'바나나',3900,'키위',5400]
## aList.txt를 생성해주세요.
## 사과는(은) 12000원입니다.

=====================================================

with open('aList.txt','wt') as file:
    aList=['사과',12000,'바나나',3900,'키위',5400]
    for i in range(0,len(aList),2): # range 함수 : start , stop , step
        file.write(f"{aList[i]} 는(은) {aList[i + 1]} 원입니다.\n")
        # file.write("%s는(은) %d원입니다.\n" % (aList[i], aList[i + 1])) ## 다른 풀이
 

✔️ 파이썬에서 f 문자열(f-string)을 사용하면 문자열 내에 변수를 포함하여 보다 간단하고 가독성이 좋은 문자열을 생성할 수 있습니다. f 문자열은 f로 시작하는 문자열 리터럴로 표시되며 중괄호 {} 안에 변수 또는 표현식을 넣어서 해당 값이 문자열 내에 삽입될 수 있습니다.

 

✔️ f"{item} 는(은) {price} 원입니다.\n" 부분은 f 문자열을 사용하여 변수 item과 price의 값을 문자열 내에 삽입하는 부분입니다. 중괄호 {} 안에 변수 이름이나 표현식을 넣으면 해당 값이 문자열로 포맷팅되어 출력됩니다.

 

### 문제 2
## bList.txt 파일이 있습니다.
## [홍길동][남]
## [아리][여]
## [쉔][남]
## [모르가나][여]
## .
## .
## .
## 파이썬 쉘 화면에서
## 남자는 ㅁ명, 여자는 ㅁ명입니다.
 
with open('bList.txt','rt') as file: # bList 를 일단 읽어옴
        content = file.read()
        print(content) # 내용을 한번 출력해서 확인해본다.
cnt1 = 0  # 남자일때
cnt2 = 0  # 여자일때

lines = content.split('\n') # 내용을 줄 바꿈 될때 마다로 끊어준다. 

for line in lines:  # 줄 마다 내용을 읽을때 
    if '남' in line: # '남' 이라고 써있다면 
        cnt1 += 1  # cnt1 횟수 추가
    elif '여' in line: # '여' 라고 써있다면
        cnt2 += 1  # cnt2 횟수 추가 

print('\n')
print('남자는 %d 명, 여자는 %d 명 입니다.' % (cnt1,cnt2))
 

 

 

728x90
반응형