상세 컨텐츠

본문 제목

[Python, 연습문제] 함수, 사용자 입출력, 파일 읽고 쓰기

파이썬

by 서원렬 2022. 5. 29. 11:41

본문

728x90
반응형

04장 연습문제 - 점프 투 파이썬 (wikidocs.net) 

Q1 : 주어진 자연수가 홀수인지 짝수인지 판별해주는 함수(is_odd)를 작성해보자.

def is_odd(num):
    if num%2!=0: print("%d는 홀수입니다" %num)
    else: print("%d는 짝수입니다."%num)

is_odd(3)
is_odd(6)


3는 홀수입니다
6는 짝수입니다.

 

Q2 : 입력으로 들어오는 모든 수의 평균값을 계산해 주는 함수를 작성해보자.(단, 입출력으로 들어오는 수의 개수는 정해져있지 않다. ※ 평균 값을 구할 때는 len 함수를 사용해보자.

 

def avg(*args):
    sum=0
    for i in args:
        sum += i
    avg=sum/len(args)
    return avg

print(avg(1,2,3,4,5,6,7,8,9,10))
print(avg(1,5,15))


5.5
7.0

 

Q3 : 다음은 두 개의 숫자를 입력받아 더하여 돌려주는 프로그램이다.

input1 = input("첫번째 숫자를 입력하세요:")
input2 = input("두번째 숫자를 입력하세요:")

total = input1 + input2
print("두 수의 합은 %s 입니다" % total)

 

이 프로그램을 수행해보자.

 

그러면 다음과 같은 결과를 얻을 것이다. 이 프로그램의 오류를 수정해보자.

첫번째 숫자를 입력하세요:3
두번째 숫자를 입력하세요:6
두 수의 합은 36 입니다
input1 = int(input("첫번째 숫자를 입력하세요:"))
input2 = int(input("두번째 숫자를 입력하세요:"))

total = input1 + input2
print("두 수의 합은 %s 입니다" % total)


첫번째 숫자를 입력하세요:3
두번째 숫자를 입력하세요:6
두 수의 합은 9 입니다

 

Q4 : 다음 중 출력 결과가 다른 것 하나를 골라보자.

 

  1. print("you" "need" "python")
  2. print("you"+"need"+"python")
  3. print("you", "need", "python")
  4. print("".join(["you", "need", "python"]))
더보기

3번, [1,2,4]번은 "youneedpython"이 출력되지만 3번은 "you need python"이 출력된다.

 

Q5 : 다음은 "test.txt"라는 파일에 "Life is too short" 문자열을 저장한 후 다시 그 파일을 읽어서 출력하는 프로그램이다.

 

f1 = open("test.txt", 'w')
f1.write("Life is too short")

f2 = open("test.txt", 'r')
print(f2.read())

이 프로그램은 "Life is too short"라는 문장을 출력하지 않는다. 우리가 예상한 값을 \출력할 수 있도록 프로그램을 수정해보자.

f1 = open("test.txt", 'w')
f1.write("Life is too short")
f1.close()

f2 = open("test.txt", 'r')
print(f2.read())
f2.close()

 

Q6 : 사용자의 입력을 파일(test.txt)에 저장하는 프로그램을 작성해 보자. (단 프로그램을 다시 실행하더라도 기존에 작성한 내용을 유지하고 새로 입력한 내용을 추가해야 한다.)

with open("test.txt",'a') as f:
    while True:
        text = input("저장할 내용을 입력하세요. 탈출하려면 0을 입력하세요: ")
        if text!="0":
            f.write(text +"\n") #줄바꿈
        else:
            break

저장할 내용을 입력하세요. 탈출하려면 0을 입력하세요: hi
저장할 내용을 입력하세요. 탈출하려면 0을 입력하세요: hello
저장할 내용을 입력하세요. 탈출하려면 0을 입력하세요: 0

Q7 :다음과 같은 내용을 지닌 파일 test.txt가 있다. 이 파일의 내용 중 "java"라는 문자열을 "python"으로 바꾸어서 저장해 보자.

with open("test.txt",'r') as f:
  texts=f.read()
with open("test.txt","w") as f:
    texts.replace("java","python")
    f.write(texts)
728x90
반응형

'파이썬' 카테고리의 다른 글

[Python] 파일 입출력  (0) 2022.05.29
[Python] 사용자 입력과 출력  (0) 2022.05.28
[Python] 함수  (0) 2022.05.28
[N141] Vector  (0) 2022.05.26
[Python] [조건, 반복문] if, for, while문 연습문제  (0) 2022.05.25

관련글 더보기