점프 투 파이썬 정리 3. 입력과 출력

lilyoh·2020년 7월 14일
0
post-custom-banner

🥰 점프 투 파이썬 내용 중에서 기억해야 할 것들 정리

1. 함수

매개변수와 인수

def add(a, b):  # a, b는 매개변수
    return a+b

print(add(3, 4))  # 3, 4는 인수

입력값과 결과값에 따른 함수 형태

<일반적인 함수>

def add(a, b): 
    result = a + b 
    return result

# 사용방법    
>>> a = add(3, 4)
>>> print(a)
7

<입력값이 없는 함수>

>>> def say():
>>>     return 'Hi'

# 사용방법
>>> a = say()
>>> print(a)
Hi

<결과값이 없는 함수>

>>> def add(a, b):
>>>     print("%d, %d 의 합은 %d 입니다." % (a, b, a+b)

# 사용 방법
>>> add(3, 4)
3, 4 의 합은 7 입니다.

# 결과값이 없다는 증거
>>> a = add(3, 4)
>>> print(a)
None

<입력값도 결과값도 없는 함수>

>>> def say():
>>>     print('Hi')

# 사용 방법
>>> say()
Hi

입력값이 몇 개가 될지 모를 때

def add_many(*args):
    result = 0
    for i in args:
        result +=i
    return result
    
# 실행
>>> result = add_many(1, 2, 3)
>>> print(result)
6

! 키워드 파라미터
키워드 파라미터를 사용할 때는 매개변수 앞에 별 두 개 (**)
매개변수 kwargs 는 딕셔너리가 된다

def print_kwargs(**kwargs):
    print(kwargs)
    
# 사용
>>> print_kwarges(a = 1)
{'a' : 1}
>>> print_kwarges(name = 'foo', age = 3)
{'age' = 3,'name' = 'foo'}

2. 사용자의 입력과 출력

input 은 입력되는 모든 것을 문자열로 취급한다 (중요)

>>> print("life" "is" "too short") # ①
lifeistoo short
>>> print("life"+"is"+"too short") # ②
lifeistoo short

3. 파일 읽고 쓰기

파일 생성하기

f = open('새파일.txt', 'w')
f.close()

파일 열기모드는 3가지가 있다
1. r = 읽기모드 2. w = 쓰기모드 3. a = 추가모드 (파일의 마지막에 새로운 내용 추가할 때 사용)

새 파일을 C:/doit 디렉토리에 생성하고 싶을 때

f = open('C:/doit/새파일.txt', 'w')
f.close()

파일을 쓰기모드로 열어서 출력값 적기

f = open('C:/doit/새파일.txt', 'w')
for i in range(1, 11):
    data = '%d번째 줄입니다. \n' % i
    f.write(data)
f.close()

프로그램 외부에 저장된 파일을 읽는 방법

파이썬에는 외부 파일을 읽어 들여 프로그램에서 사용할 수 있는 여러 가지 방법들이 있다

  1. readline() 함수
f = open('C:/doit/새파일.txt', 'r') # 파일을 읽기모드로 연 후
line = f.readline() # readline() 을 통해서 파일의 첫 번째 줄을 출력
print(line) # 새파일.txt 의 가장 첫 번째 줄이 화면에 출력됨
f.close()
  1. readlines() 함수
f = open('C:/doit/새파일.txt', 'r')
lines = f.readlines()
for line in lines:
    print(line)
f.close()

readlines 함수는 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려준다

  1. read() 함수
f = open('C:/doit/새파일.txt', 'r')
data = f.read()
print(data)
f.close()

f.read 는 파일의 내용 전체를 문자열로 돌려준다
따라서 위 예의 data 는 파일의 전체 내용

파일에 새로운 내용 추가하기

쓰기모드로 파일을 열 때, 이미 존재하는 파일을 열면 그 파일의 내용이 모두 사라진다
원래 있던 값을 유지하면서 새로운 값을 추가하고 싶을 때는 추가모드 ('a') 로 열면 된다

f = open('C:/doit/새파일.txt', 'a')
for i in range(11, 20):
    data = '%d번째 줄입니다.\n' % i
    f.write(data)
f.close()

With 문과 함께 사용하기

파일을 열면 항상 f.close() 로 닫아주는 것이 좋다
하지만 귀찮음!
with 문을 사용하면 자동으로 파일을 닫을 수 있다

with open('foo.txt', 'w') as f:
    f.write('Life is too short, you need python')

with 문을 사용하면 with 블록을 벗어나는 순간
열렸던 파일 객체 f 가 자동으로 close 된다

post-custom-banner

0개의 댓글