(2021.01.11)
파이썬의 함수에 대해 공부했다.
앞부분은 c를 배우기도 했고, 파이썬 책이 워낙 쉽고 깔끔하게 잘되어있어서 금방금방 읽었다. 맘잡고 하면 하루만에 읽을 수도 있을 정도 같다. 그치만 나는 한 번에 몰아서 못하는 스타일이라 매일매일 조금씩 하고 있다..... 그래도 총 2~3주만에 다 보려고 계획 중이다.
book.naver.com/bookdb/book_detail.nhn?bid=15052904
참고도서: 점프투파이썬
함수
파이썬 함수의 구조
def 함수이름(매개변수):
수행할 문장 1
수행할 문장 2
...
return 결과값
매개변수: 함수에 입력으로 전달된 값을 받는 변수
인수: 함수를 호출할 때 전달하는 입력값
※ 함수값은 언제나 하나 이기때문에 return문을 여러개 써도 결과가 다 출력되지는 않는다.
※ 함수 안에서 선언한 매개변수는 함수 안에서만 사용될 수 있다. --> global 명령어는 되도록 쓰지 않도록
함수에는 크게 4가지 종류의 함수가 있다.
일반적인 함수, 입력값이 없는 함수, 결과값이 없는 함수, 입력값과 결과값이 모두 없는 함수이다.
▷ 일반적인 함수
결과값을 받을 변수 = 함수이름(입력인수1, 입력인수2, ... )
▷ 입력값이 없는 함수
결과값을 받을 변수 = 함수이름( )
▷ 결과값이 없는 함수
함수이름(입력인수1, 입력인수2, ...)
▷ 입력값과 결과값이 모두 없는 함수
함수이름( )
매개변수 지정하여 호출하기
>>> def add(a,b):
... return a+b
...
>>> result = add(b=7,a=3)
>>> print(result)
10
위의 예제처럼 배개변수를 지정하여 호출하면, result = add(b=7, a=3) 처럼 순서에 상관없이 사용할 수 있다.
여러 개의 입력값을 받는 함수 만들기
여러개의 입력값을 받는 함수를 만들기 위해서는 일반적인 함수 형태에서 매개변수 부분을 *매개변수로 바꿔주면 된다.
def 함수이름(*매개변수):
수행할 문장
...
키워드 파라미터
키워드 파라미터는 매개변수 앞에 **를 붙여준다.
매개변수 앞에 **를 붙이면, 매개변수 kwargs는 딕셔너리가 되고, 모든 key=value 형태의 결과값이 그 딕셔너리에 저장된다.
def 함수이름(**매개변수):
수행할 문장 1
수행할 문장 2
...
매개변수에 초기값 미리 설정하기
초기화 시키고 싶은 매개변수를 항상 뒤쪽에 놓아야한다.
lambda
람다라고 읽는 lambda는 함수를 생성할 때 사용하는 예약어이다.
def add(a,b):
return a+b
요 함수를 lambda를 이용해서 다시 짜주면
add = lambda a,b: a+b
이렇게 표현할 수가 있다!!
사용자 입력과 출력
사용자 입력
input("질문 내용")
print 문은 숫자 출력, 문자열 출력, 리스트 출력 등등 입력한 자료형을 출력해준다.
① 큰 따옴표로 둘러싸인 문자열은 +연산과 동일하다
② 문자열 띄어쓰기는 콤마로 한다
>>> print("Life" "is" "too short")
Lifeistoo short
>>> print("Life", "is", "too short")
Life is too short
매개변수 end를 사용하여 끝문자를 지정하면, 한줄에 결과값을 출력할 수 있다.
위 예제의 print(i,end=' ') 에서는 ' '가 끝문자이다.
파일 읽고 쓰기
파일 생성하기
파일 객체 = open(파일 이름, 파일 열기 모드)
파일 열기 모드 | 설명 |
r | 읽기 모드 - 파일을 읽기만 할 때 사용 |
w | 쓰기 모드 - 파일에 내용을 쓸 때 사용 |
a | 추가 모드 - 파일의 마지막에 새로운 내용을 추가할 때 사용 |
파일을 열고 나서는 항상 f.close( ) 를 써주어 파일을 닫아주어야한다.
파일 쓰기모드로 열어 출력값 적어주기
파일을 쓰기모드로 열어서 출력값을 적으려고 했는데
계속 오류가 났다...
먼저 생성을 하고 출력값을 적는 건가...싶어서 for문을 지우고 해봤지만 그래도 오류가 났다...
알고보니까 내가
f=open('C:/Users/USER/Desktop/Pythonstudy/새파일.txt",'w') 에서 C앞에 ' 를 썼다....
" 를 썼어야했는데.....
아무튼 그래서 다시 출력값을 적어주었다.
적어주고 f5를 누르고 생성된 메모장을 열어주면
제대로 출력이 된걸 볼 수 있다!!
프로그램의 외부에 저장된 파일 읽기
▷ readline 함수 사용하기
readline 함수는 가장 첫 번째 줄을 화면에 출력시켜준다.
▷ readlines 함수 사용하기
readlines 함수는 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려준다.
▷ read 함수 사용하기
read 함수는 파일의 내용 전체를 문자열로 돌려준다.
with 문과 함께 사용하기
with 문은 close함수를 사용해주지 않아도 된다.
f=open("제목없음.txt",'w')
f.write("내용 없습니다.")
f.close()
위와 같은 코드를 with문을 이용하면
with open("제목 없음.txt",'w') as f:
f.write("내용 없습니다")
이렇게 바꿔서 써줄 수 있다.
with 블록을 벗어나는 순간 열린 파일 객체 f가 자동으로 close된다.
파이썬 4장까지 정리끝!!!
총 7장인 책의 절반 넘는 장이 끝났다. 근데 아직도 책의 장수는 절반 넘게 남았다....
다음주까지는 무조건 끝내야쥐
'Coding > Python' 카테고리의 다른 글
[Python] 파이썬 - 모듈 (0) | 2021.01.15 |
---|---|
[Python] 파이썬 - 클래스(class) (0) | 2021.01.14 |
[Python] 파이썬 반복문 - while문, for문 (0) | 2021.01.09 |
[Python] 파이썬 제어문 - if문 (0) | 2021.01.08 |
[Python] 파이썬 자료형 - 튜플 자료형, 딕셔너리 자료형, 집합 자료형, 불 자료형, 변수 (0) | 2021.01.08 |