티스토리 뷰
01. 미운코딩새끼
02. 프로그램과 프로그래밍
· 프로그램의 기본 구조
순차 (순서대로 차례대로)
선택 (if 예 아니오)
반복 (for, while)
03. 왜 파이썬일까요?
1. 쉽다
절대적으로는 어려움
2. 범용 프로그래밍 언어이다 (만들 수 있는 게 많다)
3. 코드가 간결하다
4. 빠르게 개발이 가능하다
파이썬 라이브러리가 많다.
TMI !
파이썬 코드는 아름답고 간결해야 한다.
그중 간결함에 초점이 맞춰져 있다.
04. 파이썬 설치하기 : IDLE
05. 출력하기 : print()
06. 입력하기 : input()
07. 변수와 변수 이름
· 변수 (variable)
변할 수 있는 수
· 변수 naming 규칙 (유니코드)
1. 대소문자를 구분한다
2. 한글 사용이 가능하다
3. 숫자로 시작할 수 없다
4. 띄어쓰기는 _ 로 대체한다
my int → my_int
08. 기본재료 1 : 숫자형, 문자형, 불린
int 정수
float 실수
String 문자
boolean 참과 거짓
TMI !
컴퓨터 = 계산하는 사람
옛날에는 컴퓨터라는 직업이 있었다.
09. 기본재료 2 : 리스트, 튜플, 딕셔너리
· Container
리스트, 튜플, 딕셔너리와 같이 여러 개의 값을 모아놓는 것(?)들을 말한다.
· List [ ]
· Tuple ( )
안에 값을 변경할 수 없다.
my_tuple = ('방울이', '벼리')
my_tuple[1] = '비린내 나는 벼리' # ERROR!
· Dictionary { key : value }
my_family = {
'박보희' : '여자'
'벼리' : '남자'
'방울이' : '중성'
}
print(my_family['벼리'])
# 출력 '남자'
10. 자료형 변환하기
· 강제 형 변환
int
my_int = 1 # integer
print(my_int)
# 출력 1
float(my_int) # float
print(float(my_int))
# 출력 1.0
str(my_int) # String
print(str(my_int))
# 출력 '1'
String
my_str = 'korea' # String
print(my_str)
# 출력 'korea'
list(my_str) # list
print(list(my_str))
# 출력 ['k', 'o', 'r', 'e', 'a']
11. 주석 (comment)
#을 사용한다
# 개발코를 출력합니다
print('개발코')
12. 문자열
작은 / 큰 따옴표 3개를 사용하면 여러 줄에 문자열을 저장할 수 있다.
my_family = """
박보희
방울이
벼리
"""
print(my_family)
# 출력 '\n박보희\n방울이\n벼리\n'
13. 문자열 포맷팅 (formatting)
정수 %d
실수 %f
문자 %s
· 단일 사용
my_name = 'My name is %s' % '박보희'
print(my_name)
# 출력 'My name is 박보희'
· 여러 개 사용
여러 개 일 때 (괄호)를 사용한다.
my_birthday = '2001. %d. %d' % (7, 5)
print(my_birth)
# 출력 '2001. 7. 5'
14. format( )
my_name = 'My name is %s' % '박보희'
my_name = 'My name is {}'.format('박보희')
{괄호} 안에 숫자를 사용하면 주소로 들어간다.
my_birthday = '{1}. {2}. {0}'.format(5, 2001, 7)
#0 #1 #2
print(my_birthday)
# 출력 '2001. 7. 5'
15. 문자열 인덱싱
· Indexing (주소, 위치)
-6 | -5 | -4 | -3 | -2 | -1 |
0 | 1 | 2 | 3 | 4 | 5 |
P | Y | T | H | O | N |
16. 문자열 슬라이싱
my_py = 'PYTHON'
print(my_py[:2])
# 출력 'PY'
print(my_py[1:4])
# 출력 'YTH'
print(my_py[3:])
# 출력 'HON'
17. 문자열 메서드
· 함수
어떠한 기능을 수행하는 메서드
· split( )
기본 default
공백을 기준으로 나눈다.
my_life = 'Life is too short'
print(my_life.slice())
# 출력 ['Life', 'is', 'too', 'short']
사용자 정의
my_phone = '011-8956-5623'
print(my_phone.slice('-'))
# 출력 ['011', '8956', '5623']
18. 독스트링 (docstring)
함수 설명을 할 때 사용한다.
작은 / 큰 따옴표 3개를 사용하면 주석으로 사용할 수 있다.
감싼 문자열에 어느 이름(변수명)을 붙이지 않고 사용하면 주석으로 사용할 수 있다.
# 주석
"""
주석
"""
19. end, 이스케이프 코드
· end
print('방울이와 ', end='벼리')
# 출력 '방울이와 벼리'
· 이스케이프 코드 (Escape Code)
특정한 기능을 수행하는 문자의 조합
enter \n
tab \t
20. 리스트
1. 여러 개의 값을 저장
2. 들어가는 값은 같아도, 달라도 된다.
3. 값을 변경할 수 있다. (mutable)
TMI !
immutable 값을 변경할 수 없는
mutable 값을 변경할 수 있는
21. 리스트 값 추가하기
my_pets = ['방울이']
print(my_pets)
# 출력 ['방울이']
my_pets.append('벼리')
print(my_pets)
# 출력 ['방울이', '벼리']
22. 리스트 인덱싱, 슬라이싱
· 리스트 인덱싱
index | 0 | 1 | 2 |
element | 123 | 'ab' | true |
· 리스트 삭제
my_pets = ['방울이', '벼리']
del my_pets['벼리']
print(my_pets)
# 출력 ['방울이']
· 리스트 슬라이싱
String과 동일하다
my_animals = ['강아지', '토끼', '햄스터', '작은 쥐', '수달', '물개']
print(my_animals[1:4])
# 출력 ['토끼', '햄스터', '작은 쥐']
23. 리스트 메서드
· 리스트 메서드
list.sort( )
내림차순으로 정렬한다.
list.count( )
같은 값이 리스트에 몇 개가 있는지 알려준다.
· 함수
파이썬에서 기본으로 제공하는 내장 함수
len()
개수를 알려준다.
24. 튜플
값을 변경할 수 없다. (immutable)
my_tuple = ()
my_tuple = (1, 2, 3)
# 가능
my_tuple[0] = 4
# 불가능
25. 패킹, 언패킹
· Packing
여러 개를 하나로
my_tuple = (1, 2, 3)
· Unpacking
하나를 여러 개로
my_tuple = (1, 2, 3)
n1, n2, n3 = my_tuple
# n1 = 1
# n2 = 2
# n3 = 3
temp를 사용하지 않고 서로의 값을 바꿀 때
n1 = 1
n2 = 2
n1, n2 = n2, n1
# n1 = 2
# n2 = 1
26. for
for 변수 in Container(list, tuple, dictionary):
수행할 명령
27. range( )
for n in range(3):
print(n)
# 출력 0 1 2
for n in range(1, 4):
print(n)
# 출력 1 2 3
28. for x 2
29. 컴프리헨션 (Comprehension)
결과 값을 리스트로 만들겠다.
numbers = [1, 2, 3, 4, 5]
odd_numbers = []
# 일반
for number in numbers:
if number % 2 == 1:
odd_numbers.append(number)
# 출력 [1, 3, 5]
# 컴프리헨션
odd_numbers = [number for number in numbers if number % 2 == 1]
# 출력 [1, 3, 5]
30. 할당 연산자 (Assign)
· 할당 연산자
= | += | -= | *= | /= |
· 복합 할당 연산자
+= | -= | *= | /= |
31. 산술 연산자 (Arithmetic)
· 산술 연산자
+ | - | * | / |
· 특수 연산자
** | // | % |
제곱 | 몫 | 나머지 |
# 제곱
4 ** 2
# 출력 16
# 몫
7 / 3
# 출력 2.33333···.
7 // 3
# 출력 2
# 나머지
7 % 3
# 출력 1
32. %로 홀짝 구분하기
1 % 2 == 1 # 홀수
2 % 2 == 0 # 짝수
3 % 2 == 1 # 홀수
4 % 2 == 0 # 짝수
33. 문자열 연산자 (String)
· 문자열 연산자
+ | * |
연결 | 반복 |
'김왼손' + 'X' + '김오른손'
# 출력 '김왼손X김오른손'
'안녕' * 3
# 출력 '안녕안녕안녕'
34. 비교 연산자 (Comparison)
· 비교 연산자
== | != | > |
< | >= | <= |
35. 논리 연산자 (Logical)
· 논리 연산자
기존 언어와는 조금 다르다
and | or | not |
age = 8
height 120
if height > 140 and age > 10:
print('탑승')
36. 멤버십 연산자 (Membership)
· 멤버쉽 연산자
Container(List, Tuple, Dictionary) 안에 값이 있는지 확인한다.
in | not in |
my_family = ['박보희', '박지희', '방울이', '벼리']
'방울이' in my_family
# 출력 True
'방울이' not in my_family
# 출력 false
37. if
if 조건:
실행할 명령
38. else, elif
· else
if 조건:
실행할 명령
else:
실행할 명령
· elif
if 조건:
실행할 명령
elif 조건:
실행할 명령
39. while
· 반복문 (Loop)
while 조건:
실행할 명령
40. continue, break
· continue
continue 아래 명령을 실행하지 않고 다시 반복문 위로 돌아간다.
· break
반복문을 빠져나온다.
41. 딕셔너리 (Dictionary)
· key와 value
{ key : value }
· 추가
my_dict = []
my_dict[0] = 'a'
# key # value
print(my_dict)
# 출력 {0: 'a'}
print(my_dict[0])
# 출력 'a'
· 삭제
my_dict = {0: 'a', 1: 'b'}
del my_dict[0]
print(my_dict)
# 출력 {1: 'b'}
42. 딕셔너리 메서드
· dict.values( )
my_dict = {1: 'a', 2: 'b', 3: 'c'}
print(my_dict.values())
# 출력 dict_values(['a', 'b', 'c'])
for v in my_dict.values():
print(v)
# 출력 'a', 'b', 'c'
· dict.keys( )
my_dict = {1: 'a', 2: 'b', 3: 'c'}
print(my_dict.keys())
# 출력 dict_values([1, 2, 3])
for k in my_dict.keys():
print(k)
# 출력 1, 2, 3
· dict.items( )
my_dict = {1: 'a', 2: 'b', 3: 'c'}
for k, v in my_dict.items():
print(k, v)
# 출력
# 1 a
# 2 b
# 3 c
43. 함수 (Function)
· 내장 함수
파이썬에서 기본으로 제공하는 함수
print()... input()... len()...
· 모듈의 함수
모듈을 import 해서 사용할 수 있는 함수
· 사용자 정의 함수
def 함수이름(인자1, ...):
실행할 명령
return 결과
44. 함수를 사용하는 이유
1. 재사용성
2. 코드 관리
3. 조립식 사용
· 예제
def sum(n1, n2):
return n1 + n2
print(sum(1, 4))
# 출력 5
45. 여러 개 돌려주기
여러 개의 결과 값을 하나의 튜플로 (packing) 만들어 돌려준다.
def 함수이름(인자1, ...):
실행할 명령
return 결과1, 결과2, ...
def add_mul(n1, n2):
return n1 + n2, n1 * n2
print(add_mul(2, 4))
# 출력 (6, 8)
46. 모듈 (Module)
47. 랜덤 (Random)
· random.choice( )
import random
animals = ['퍼피', '도그', '강아지', '개']
print(random.choice(animals))
# 출력 '도그'
· random.sample( )
중복되지 않은 값을 출력한다
import random
print(random.sample(range(1, 46), 6))
# 출력 23, 22, 14, 32, 44, 30
· random.randint( )
8 ~ 10까지의 값 중 한 가지 값을 출력한다.
print(random.randit(8, 10))
# 출력 8
48. 객체 (Object)
49. 코딩 스타일
· PEP (Python Enhance Proposal) 8
파이썬 코딩 스타일 가이드
참고
https://spoqa.github.io/2012/08/03/about-python-coding-convention.html
50. 구글링 방법
'기타 🎸 > 강의' 카테고리의 다른 글
[React 기본 강좌] 2. 리액트 Hooks! (0) | 2019.12.14 |
---|---|
[React 기본 강좌] 1. 리액트란 무엇인가? 왜 쓰는가? (0) | 2019.12.14 |
[React로 NodeBird SNS 만들기] 1. Hello, Next.js (0) | 2019.12.09 |
- Total
- Today
- Yesterday
- github
- flutter_form_builder
- 일상
- intro 화면
- 줌바 댄스
- react
- Github Pages
- nodebird
- 강의
- activiry
- Error
- 프로젝트 업로드
- python
- github desktop
- Spinner
- OnClickListener
- Maker League
- Inkscape
- 미운코딩새끼
- Android
- user setting
- Live Server
- 정보전산직
- power mode
- 레이저 커팅
- 템플릿
- 줌사모
- vscode
- EJS
- nodejs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |