🥰 점프 투 파이썬 내용 중에서 기억해야 할 것들 정리
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'}
input 은 입력되는 모든 것을 문자열로 취급한다 (중요)
>>> print("life" "is" "too short") # ①
lifeistoo short
>>> print("life"+"is"+"too short") # ②
lifeistoo short
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()
파이썬에는 외부 파일을 읽어 들여 프로그램에서 사용할 수 있는 여러 가지 방법들이 있다
f = open('C:/doit/새파일.txt', 'r') # 파일을 읽기모드로 연 후
line = f.readline() # readline() 을 통해서 파일의 첫 번째 줄을 출력
print(line) # 새파일.txt 의 가장 첫 번째 줄이 화면에 출력됨
f.close()
f = open('C:/doit/새파일.txt', 'r')
lines = f.readlines()
for line in lines:
print(line)
f.close()
readlines 함수는 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려준다
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()
파일을 열면 항상 f.close() 로 닫아주는 것이 좋다
하지만 귀찮음!
with 문을 사용하면 자동으로 파일을 닫을 수 있다
with open('foo.txt', 'w') as f:
f.write('Life is too short, you need python')
with 문을 사용하면 with 블록을 벗어나는 순간
열렸던 파일 객체 f 가 자동으로 close 된다