실행순서 : 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 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
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 조건 :
실행할 명령 1
실행할 명령 2
if 조건 :
실행할 명령 1
실행할 명령 2
# if문의 조건이 False일 때 elif에 와서 두 번째 조건을 비교함.
elif 조건 :
실행할 명령 1
실행할 명령 2
if 조건 :
실행할 명령 1
실행할 명령 2
# if문의 조건이 False일 때 else를 타러 옴.
else :
실행할 명령 1
실행할 명령 2
풀어쓰기
# 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
나머지 연산자를 사용해 홀수 짝수를 찾아오기
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]
왼쪽 피연산자가 오른쪽 피연산자 보다 큰가?
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
# 함수의 기본형
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
메서드 명 | 설명 | 예시 |
---|---|---|
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]
# 기타라는 물체를 객체로 구현하면...
guitar = {'Name' : 'G6136CST', 'Color' : 'White Lacquer', 'Family' : 'Falcon', 'Fingerstyle' : '?', 'Strumming' : '?'}
위의 함수가 파이썬에선 이렇게 구현 됨