#3 제어문 / 함수 / 파일 입출력

JIY00N·2023년 1월 30일
0

Python

목록 보기
3/9
post-thumbnail

2023.01.30

0. 시작하기전

이번 포스트에서는 파이썬의 제어문, 함수, 입출력에 관해 공부해보자!

1. if문

if 조건문:
	수행할 문장1
elif 조건문2:
	수행할 문장2
...
else:
	수행할 문장3

✔ 비교 연산자(<,>,==,!=,>=,<=)
✔ and, or, not
x or y / x and y / not x
✔ x in s, x not in s
x in 리스트, 튜플, 문자열
x not in 리스트, 튜플, 문자열

조건부 표현식
조건문이 참인 경우 if 조건문 else 조건문이 거짓인 경우

message = "success" if score >=60 else "failure"
# score가 60이상일 경우 message에 success를 아니면 failure

2. while문

while 조건문:
	수행할 문장1
    수행할 문장2
    ...

✔ break - while문 강제로 빠져나감
✔ continue - while문의 조건문으로 다시 돌아감
✔ 무한루프

while True:
	수행할 문장1
    수행할 문장2
    ...

3. for문

for 변수 in 리스트,튜플,문자열:
	수행할 문장1
    수행할 문장2
    ...

✔ 예제

test_list = ['one','two','three']
for i in test_list:
	print(i) # one two three를 순서대로 i에 대입

✔ range(시작숫자, 끝숫자) - 끝 숫자는 포함x
✔ 리스트 내포
[표현식 for 항목 in 반복 가능 객체 if 조건]

>>> a = [1,2,3,4]
>>> result = [num*3 for num in a if num%2==0]
>>> print(result)
[6,12]

4. 함수

✔ 함수의 결괏값은 언제나 하나이다.
✔ return 을 사용해서 함수를 즉시 빠져나갈 수 있다.
✔ 초기화시키고 싶은 매개변수는 항상 뒤쪽에 놓는다.

4-1 정의

def 함수이름(매개변수):
	수행할 문장1
    수행할 문장2
    ...
    return 결괏값

4-2 매개변수와 인수

def add(a,b) # a,b는 매개변수
    return a+b
print(add(3,4)) # 3,4는 인수

4-3 함수 형태

  1. 입력값o, 결괏값o
    결괏값을 받을 변수 = 함수이름(입력인수1, 입력인수2,...)
  2. 입력값x, 결괏값o
    결괏값을 받을 변수 = 함수이름()
  3. 입력값o, 결괏값x
    함수이름(입력인수1, 입력인수2,...)
  4. 입력값x, 결괏값x
    함수이름()

4-4 여러개의 입력값을 받는 함수(*매개변수)

def 함수이름(*매개변수):
	수행할 문장1
    수행할 문장2
    ...
    return 결괏값

4-5 함수 안에서 함수 밖의 변수를 변경하는 법(return 권장)

  1. return 사용하기
# vartest_return.py
a = 1
def vartest(a):
	a = a+1
    return a
a = vartest(a) # vartest(a)의 결괏 값을 함수 밖의 변수 a에 대입
print(a)
  1. global 명령어 사용하기
# vartest_global.py
a = 1
def vartest():
	global a
	a = a+1
vartest()
print(a)

4-6 lambda

lambda 매개변수1, 매개변수2,... :매개변수를 사용한 표현식

✔ 함수를 한줄로 간격하게 만들때 사용
✔ 예약어 def와 동일한 역할

>>> add = lambda a, b: a+b
>>> result = add(3,4)
>>> print(result)
7

5. 입출력

5-1 input

✔ 입력되는 모든 것을 문자열로 취급

>>> number = input("숫자를 입력하세요: ")
숫자를 입력하세요: 3
>>> print(number)
3

5-2 print

✔ 큰따옴표로 둘러싸인 문자열은 + 연산과 동일

>>> print("Life" "is" "too short")
Lifeistoo short
>>> print("Life"+"is"+"too short")
Lifeistoo short

✔ 문자열 띄어쓰기는 콤마로 함

>>> print("Life", "is", "too short")
Life is too short

✔ 한 줄에 결괏값 출력하기(end = ' ')

>>> for i in range(10):
		print(i,end ='')
0 1 2 3 4 5 6 7 8 9 >>>

6. 파일 읽고 쓰기

6-1 파일 생성하기

파일 객체 = open(파일 이름, 파일 열기 모드)
🎯파일 열기 모드
1. 읽기모드(r) - 파일을 읽기만 할 때 사용
2. 쓰기모드(w) - 파일에 내용을 쓸 때 사용
3. 추가모드(a) - 파일의 마지막에 새로운 내용을 추가할 때 사용

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

6-2 파일을 쓰기 모드로 열어 출력값 적기

# writedata.py
f = open("C:/doit/새파일.txt",'w')
for i in range(1,11):
	data = "%d번째 줄입니다.\n" %i
    f.write(data) #  data를 파일 객체 f에 써라
f.close()

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

  1. readline 함수 사용 - 첫번째 줄을 출력
    if 모든 줄을 출력하고 싶다면 무한루프+break 사용
    f.readline()
  2. readlines 함수 사용 - 파일의 모든 줄을 읽어서 각각의 줄을 요소로 갖는 리스트로 돌려줌
    f.readlines()
  3. read 함수 사용 - 파일의 내용 전체를 문자열로 돌려줌
    f.read()

6-4 with문

파일을 자동으로 열고 닫아줌

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

7. To be continued..

다음 포스트에서는 파이썬의 대부분 내용인 클래스, 모듈, 패키지등에 관해 공부해보자

이전 포스트 Python-2 https://velog.io/@jiyoon2/Python-2
다음 포스트 Python-4 https://velog.io/@jiyoon2/Python-4

profile
블로그 이전 했습니다. https://yoon-log.vercel.app/

0개의 댓글