Python 기초 정리 2 (반복문~PEP8)
- for문
실행순서 : 1. 컨테이너 안에 있는 첫번째 원소가 변수에 들어가 실행명령1,2를 차례로 수행. 2. 컨테이너 안에 들어있는 원소가 다 처리되면 for문 밖에 있는 코드 실행. * 실행명령1,2를 묶어서 코드블럭이라고 함. 이를 구분하기 위해 세미콜론(:)과 탭으로 구분
→ 코드블럭에 들어갈 탭 간격은 탭을 줄 수도, 띄어쓰기를 줄 수도 있음. (4, 8, 16...) 하지만 한번 띄어쓰기 4칸을 썼으면 끝날때까지 4칸 써야 함. 4칸 썼다 탭 썼다 하면 안됨. 바로 에러남. * 귀도반로섬 아저씨는 띄어쓰기 4칸 권장!
animals = ['코끼리', '북극곰', '강아지', '고양이', '하마', '악어', '새앙토끼', '원숭이', '햄스터', '호랑이', '사자', '앵무새', '까마귀']
for animal in animals :
print('내 이름은 {}입니다.'.format(animal))
내 이름은 코끼리입니다.
내 이름은 북극곰입니다.
내 이름은 강아지입니다.
내 이름은 고양이입니다.
내 이름은 하마입니다.
내 이름은 악어입니다.
내 이름은 새앙토끼입니다.
내 이름은 원숭이입니다.
내 이름은 햄스터입니다.
내 이름은 호랑이입니다.
내 이름은 사자입니다.
내 이름은 앵무새입니다.
내 이름은 까마귀입니다.
# 문자열로도 사용 가능
for str in '제리의 우당탕탕 파이썬 공부' :
print(str)
제
리
의
우
당
탕
탕
파
이
썬
공
부
- for문 x 2 (중첩 for문) * 들여쓰기 주의! → 파이썬으로 구구단을 출력하는 방법
for i in range(2, 10) : for j in range(1, 10) : print('{}x{}={}'.format(i, j, i*j))
-
while문 조건의 참,거짓 여부에 따라 반복여부를 결정
실행순서 : 1. 조건 2. 실행할 명령1 3. 실행할 명령2 4. 조건 5. 실행할 명령1 6. 실행할 명령2 ... n. 조건이 F가 될 때까지
count = 0 while count < 3 : print('횟수 : ', count) count += 1 # count += 1가 주석처리 될 시 무한 루프에 빠진다. # 결과 횟수 : 0 횟수 : 1 횟수 : 2
- continue 이 아래의 문장을 무시하고 바로 위로 올라가!
- break 반복문을 멈춰!
count = 0 while count < 10 : count += 1 if count < 5 : continue # continue를 만났을 때 이 아래 실행 코드 적용안하고 다시 while문으로 돌아감. print('횟수 : ', count) if count == 8 : break # 결과 횟수 : 5 횟수 : 6 횟수 : 7 횟수 : 8
- 조건문
- if
# if문 기본형 if 조건 : 실행할 명령 1 실행할 명령 2
- elif
if 조건 : 실행할 명령 1 실행할 명령 2 # if문의 조건이 False일 때 elif에 와서 두 번째 조건을 비교함. elif 조건 : 실행할 명령 1 실행할 명령 2
- else
if 조건 : 실행할 명령 1 실행할 명령 2 # if문의 조건이 False일 때 else를 타러 옴. else : 실행할 명령 1 실행할 명령 2
- if
- Comprehension → For문과 If문을 간결하게 사용하는 방법
-
풀어쓰기
# 1~10 숫자 중 홀수만 출력하기 numbers = range(1,11) odd_numbers = [] for n in numbers : if n % 2 == 1 : odd_numbers.append(n) odd_numbers [1, 3, 5, 7, 9]
-
컴프리헨션 = [변수명 for 변수명 in 리스트명 if 조건문]
# 단 한 줄로 위의 6줄을 해낼 수 있음. odd_numbers = [number for number in numbers if number % 2 == 1] [1, 3, 5, 7, 9]
-
Operator
-
- Operator
- 할당 연산자(Assign) 오른쪽에 있는 값을 왼쪽에 할당한다.
- =
- 복합 할당연산자
- += count = count + 1
- -= count = count - 1
- = count = count 1
- /= count = count / 1
- 산술 연산자(Arithmetic) 사칙 연산
- (애스터리스크)
- /
- 특수 연산자
- ** 제곱
- // 몫
- % 나머지
-
나머지 연산자를 사용해 홀수 짝수를 찾아오기
list = range(1,8) # 짝수 찾아오기 even_numbers = [n for n in list if n % 2 == 0] even_numbers [2, 4, 6] # 홀수 찾아오기 odd_numbers = [n for n in list if n % 2 == 1] odd_numbers [1, 3, 5, 7]
-
- 문자열 연산자 (파이썬의 장점)
- + 문자열끼리 연결하는 연산자
- * 같은 문자열이 뒤에 붙은 숫자만큼 반복되어 연결
- 비교 연산자 → boolean 리턴
- == 왼쪽과 오른쪽 피연산자가 같나?
- ≠ 왼쪽과 오른쪽 피연산자가 다르나?
왼쪽 피연산자가 오른쪽 피연산자 보다 큰가?
- < 왼쪽 피연산자가 오른쪽 피연산자 보다 작은가?
- ≥ 왼쪽 피연산자가 오른쪽 피연산자 보다 크거나 같은가?
- ≤ 왼쪽 피연산자가 오른쪽 피연산자 보다 작거나 같은가?
- 논리 연산자
- and 둘 다 참이어야 참
- or 하나라도 참이면 참
- not 참과 거짓 뒤집기
- Membership 리스트 안에 어떤 값 존재 여부 확인 연산자
-
in 있나?
-
not in 없나?
김왼손과_집단지성들 = ['1','2','3','4','5','6','7','8','9','10'] 김왼손과_집단지성들 ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10'] '7' in 김왼손과_집단지성들 True '11' in 김왼손과_집단지성들 False
-
- 할당 연산자(Assign) 오른쪽에 있는 값을 왼쪽에 할당한다.
- Function (사용자 정의 함수)
- 내장함수 파이썬 기본 제공 함수, 자료형과 관계없이 바로 사용 가능
- 모듈의 함수 import를 해서 가져다 쓰는 함수
- 사용자 정의 함수
- 우리가 배울 내용!
# 함수의 기본형 def 함수이름(인자1, ...) : # def는 define의 약자 실행할 명령1 실행할 명령2 return 결과 # 있을 수도 있고 없을 수도 있음
# 실제 활용 (여러개 인자, 한개 값 리턴) def add(num1,num2) : return num1+num2 add(3,7) # 결과값 10
# 실제 활용 (여러개 인자, 여러개 값 리턴) def mul(num1,num2) : return num1+num2, num1*num2 mul(7,8) # 결과값 => return 값이 여러개일 경우 튜플 형태로 리턴 (15, 56) # unpacking 가능함 my_add, my_mul = mul(7,8) my_add 15 my_mul 56
- 우리가 배울 내용!
- 메서드 메서드는 특정 자료형에 한 해 사용할 수 있음 자료형.함수명 으로 사용
- 왜 함수를 써야 하는가?
- 재사용성 한번 쓰고 끝이 아니라 계속 다시 사용 가능
- 코드 관리 용이 반복되는 코드를 한 군데에 모아놓음
- 조립해서 사용 가능 (함수를 모아둔 것을 모듈이라고 함ㅋ)
- Module 정의 비슷한 함수들을 모아 둔 파일. 남이 만든 걸 가져와서 사용할 땐 import 라는 키워드를 통해 사용 가능.
- random 난수를 만들어냄
메서드 명 설명 예시 random.choice(변수명) 변수명 안에 있는 요소들 중 하나를 랜덤하게 가져옴 random.choice(students) random.sample(변수명, 개수) 변수명 안에 있는 요소들 중 여러개를 랜덤하게 뽑음 (중복없음) random.sample(students, 4) random.randint(시작점, 종료점) 범위를 정해 그 숫자 중에서 하나 뽑는 것. random.randint(8, 10) # 로또 번호 생성기 import random print(random.sample(range(1,46),6)) # 결과 [1, 29, 3, 26, 20, 10]
- random 난수를 만들어냄
- Object 현실에 존재하는 물체들을 컴퓨터 안에 재현. 함수와 데이터를 한꺼번에 묶어서 만든 것. 파이썬에선 대부분의 것들이 객!체!
위의 함수가 파이썬에선 이렇게 구현 됨# 기타라는 물체를 객체로 구현하면... guitar = {'Name' : 'G6136CST', 'Color' : 'White Lacquer', 'Family' : 'Falcon', 'Fingerstyle' : '?', 'Strumming' : '?'}
- PEP8 코딩 스타일 가이드 하지만 일관성을 지키려고 비효율적인 소스를 짜진 말라!
Author And Source
이 문제에 관하여(Python 기초 정리 2 (반복문~PEP8)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@juwonlee920/Python-기초-정리-2-반복문PEP8저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)