점프 투 파이썬 4강: 함수와 입력, 출력

강민성·2021년 11월 9일
1

점프 투 파이썬

목록 보기
4/5

<함수: 반복되는 코드를 묶어 이름을 붙인 것>

  • 내장 함수: 파이썬에서 기본으로 제공하는 함수
  • 모듈의 함수: 이미 만들어진 함수를 import해서 갖다 쓸 수 있는 함수.
    - 모듈: 비슷한 함수들을 모아둔 파일(from 모듈명이나 함수명 import 함수명 으로 모듈에서 필요한 함수만 import할 수 있음), 다른 파일에서 정의된 함수를 import할수도 있음
    - 다른 파일에서 정의된 함수를 import할수도 있음. 함수를 정의한 파일에 if __name__==”__main__”: 실행할 명령 을 적는 경우에는 해당 함수가 다른 파일에 import되지 않음. 파일이 서로 같은 경로에 있지 않은 경우 경로를 추가해서 import하려면 import sys를 한 후 sys.path.append(파일경로)를 해 주어야 함.
    - 모듈을 여러 개 모아둔 것을 패키지라고 함
  • 사용자 정의 함수: 사용자가 직접 만드는 함수. 함수를 정의한 후 호출하여 사용.
    - def 함수명(*args): 여러 개의 인자를 받고 싶은 경우. 함수가 개수 상관없이 몇 개의 인자도 받을 수 있다는 뜻. args는 다른 단어로 대체해도 상관없음
    - def 함수명(**kwargs): 딕셔너리 형태의 여러 인자를 받고 싶은 경우
    - def 함수명(인자1, 인자2=값): 원하는 인자의 초기값을 미리 설정해서 정의할 수 있음(초기값을 설정한 인자는 마지막에 쓰는 것이 권장됨). 함수를 호출할 때 초기값과 다른 값으로 바꿔서 호출할 수도 있음. 초기값을 설정한 함수를 호출할 때는 인자의 순서를 정의했던 순서와 똑같이 써줘야 함
    - 함수명=lambda 인자1, 인자2: 실행할 명령 간단한 함수를 한 줄로 줄여 쓰는 방법으로, 이렇게 줄여서 쓰면 리스트 안에 함수를 정의할 수 있음(함수가 리스트의 구성요소 중 하나가 됨)
    - 여러 개의 return값을 가질 수 있음(패킹)

    이미지 출처: 조코딩님의 파이썬 프로그래밍 기본 강좌(https://www.youtube.com/watch?v=DEDENmlT2o0)

    이미지 출처: 김왼손님의 왼손코딩(https://www.inflearn.com/course/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EA%B8%B0%EC%B4%88-%EA%B0%95%EC%A2%8C)


  • 프로그래밍의 함수는 수학에서의 함수와 달리 input(매개변수, 인자)이나 output(결과) 없이 존재할 수도 있음(ex. alert(), append())
  • return하는 결과값은 언제나 하나: 복수의 결과값을 return시키는 경우 (결과1, 결과2)와 같은 튜플 형태의 값 하나를 return함

  • 지역 변수: 함수 안에서 사용된 변수는 함수 내에서만 사용되는 독립된 변수임
  • 전역 변수: 함수 안에서 함수 바깥의 변수를 사용하고 싶을 때, global 변수명 이라 표기

input() 사용자의 입력값을 받는 함수
print() 여러 문자열을 인자로 넣을 경우 문자열들을 한줄로 붙여서 출력, 여러 문자열들 사이에 , 을 넣어서 인자로 넣을 경우 문자열들 사이에 띄어쓰기를 해서 한줄로 출력, print(인자, end=’ ‘)를 입력할 경우 인자 뒤에 한칸의 공백을 넣어서 출력

<파일 읽고 쓰기>

파일 생성하기

f=open(“파일명.파일형식”, ‘w 혹은 r 혹은 a’) 

1) 특정 형식의 파일을 열어 내용을 쓰거나(w, write) 읽거나(r, read) 파일의 마지막에 새로운 내용을 추가(a, add)하는 모드로 만들 수 있음
작업이 끝난 후 f.close()로 닫아주어야 함

with open(“파일명.파일형식”, ‘w 혹은 r 혹은 a’) as f:

2) 특정 형식의 파일을 열어 내용을 쓰거나(w, write) 읽거나(r, read) 파일의 마지막에 새로운 내용을 추가(a, add)하는 모드로 만들 수 있음.
1)과는 달리 f가 지역변수이기 때문에, f.close()로 닫아주지 않아도 됨

f.write(인자) 쓰기모드나 추가모드에서 파일에 인자를 적는 함수
f.read() 읽기모드에서 파일 내용을 처음부터 끝까지 읽어오는 함수
f.readline() 읽기모드에서 파일 내용 한 줄(|n으로 줄 구분)을 읽어오는 함수
f.readlines() 읽기모드에서 파일 내용을 리스트 형태로 가져와서 한 줄씩 전부 읽어오는 함수
f.close() 파일 작업을 끝내고 파일을 닫는 함수

  • f=open(“파일명.파일형식”, ‘w 혹은 r 혹은 a’, encoding=’UTF=8’) encoding=’UTF=8’이라는 인자를 추가하면 한글을 깨지지 않게 할 수 있음
profile
Back-end Junior Developer

0개의 댓글