파이썬 - 초단기 속성 파이썬강의 | 미운코딩새끼#1
함께 스터디 하시는 분께서 아래의 파이썬 강좌를 추천해주셨다.
주말에 엄청 집중해서 따라해보고, 노션에 하나하나 기록하면서 시청했다. 강의는 정말 좋았다. 하지만 나는 파이썬 지식이 너무 없기도 하고 자바스크립트도 하고 있어서 그런지... 영상을 다 보았을 땐 너무 복잡했다. 오히려 아 괜히 시도했나? 싶을 정도로...
사실 현재 파이썬을 꼭 해야하나?라는 고민을 많이 했는데 내 영역의 밖이든 안이든 뭐든 배워두는게 좋은게 아닌가 ㅇㅅㅇ? 남들 할 때, 천천히 뒤따라가도 충분할 것 같아서 더 파보자! 생각했다. 나 같은 경우는 무작정 이론만 듣고나면 늘어지거나 벙져버려서 플랜을 되도록 짜고 수강하는 편인데, 나름대로 플랜을 짰다. 파이썬에 올인할 순 없기에 자바스크립트랑 파이썬이랑 동시에 진행하면서 개념과 스스로 프로그래밍을 할 수 있는 실력을 길러야한다. 그래서 내가 듣게된 김왼손의 미운코딩새끼, 생활코딩 수업은 잘 안맞아서 정말 필요한 부분이 아니면 잘 듣는데 (생활코딩에 파이썬이 있는지는 모른다.)
강의 괜찮다 집중도 잘되고 내가 앞서 봤던 강의에서 의문점을 품었던 부분들을 잘 풀어줘서 흥미가 생긴다. 그리고 다들 코딩을 하면서 파이썬은 쉬운 언어?!라고들 하는데 나는 html이고 css이고 그냥 다 어려운데, 꾹 참고 하다가 점점 흥미가 생기는 사람이라 쉽게 말하면 의욕이 떨어진다. 근데 여기서는 어렵다고 툭 터놓고 얘기해줘서 더 몰입해서 본 것 같다.
프로그램 | 프로그래밍
coding==programming : 프로그램을 만드는 작업.
program : 문제를 해결하기 위해서 명령을 모아놓은 것.
프로그램의 기본구조
- 순차 : 위에서부터 한 줄씩 순차적 명령수행
- 선택 : 선택의 순간에서의 예, 아니오 중 하나를 선택
- 반복
입력(print)과 출력(input)
• print() : 입력
: 괄호안의 입력값을 출력해주는 것이다.
: print(1, 2) 쉼표를 사용해서 여러개의 값 출력이 가능하다.
: 컴퓨터에게 '이렇게 출력해줘' 라고 얘기하는 것.
❗️되도록 , 뒤에 띄어쓰기를 해주는 것이 좋다 (C언어에서 아마도?) |
• input() : 출력
: 컴퓨터가 사용자에게 입력을 받을 수 있게 하는 것.
변수와 Data type
•변수 Variable
: 값을 담는 그릇이라고 생각해라
❗️Naming : 변수명의 시작을 숫자로 하면 안된다. 문자로 시작해서 그 뒤로 숫자가 있는 것은 괜찮다. 띄어쓰기가 불가능하니 _(언더바) 사용해준다. |
•Date type (자료형)
- 정수형 int
- 실수형 float
- 문자형 string("",'낱말')
- 참,거짓 boolean (True, False)
❗️변수 안에든 값의 데이터 타입이 궁금하다면? -> type()함수로 변수의 데이터 형태를 알 수 있다. :: type(변수명) |
❗️자료형 변환하는 방법 str(변수명), int(변수명) |
List | Tuple | Dictionary
•List [ ]
: 다양한 자료형을 한꺼번에 모아서 사용
•Tuple ( )
: list와 비슷한 성격을 띄지만 list와의 차이점은 안의 값들을 변경하지 ❌
•Dictionary { }
: 키와 값으로 이뤄져있다. container라고도 한다.
String
: "", '' 내부에 문자를 넣어서 문자열로 만들어준다,
• """ """, ''' '''
: 이 경우는 여러줄(\n)을 하나의 변수에 저장하고 싶을 때
#사용 프로그램 IDLE
my_str = """다롱
dk
dl
dh
dkz
"""
my_str
'다롱\ndk\ndl\ndh\ndkz\n'
• Formatting | '{}'.format() : 포맷 연산자
: 숫자나 문자열을 대입할 수 있다.
: %d(정수형 숫자 대입) , %s(문자열 대입) , %f(실수형 숫자 대입) => 퍼센트 연산자
#formatting
'my name is %s' % 'gwonRan'
'my name is gwonRan'
#'ran'이라는 문자열이 %s로 대입됌
#
#
#
#'{}'.format()
'my name is {}'.format('gwonRan')
'my name is gwonRan'
#동일한 결과가 나온다.
❗️데이터 타입 상관없이 효율적으로 사용이 가능한거네?! => Yes |
>>> '{} * {} = {}'.format(2, 5, 10)
'2 * 5 = 10'
>>>'{1} * {0} = {2}'.format(2, 4, 5*6)
#index번호를 줘서 내가 넣고 싶은 자리에 원하는 숫자 넣기 가능하다.
'4 * 2 = 30'
# 이것도 되나 싶어서 요모조모 해봄
>>> 'gwonRan + {1} = {0}'.format("gwonRan", 10)
'gwonRan + 10 = gwonRan'
• indexing : 문자열 인덱싱
: 긴 문장의 문자형 데이터를 가지고 있는 변수의 index값 알아보기
>>> my_index = "권란이의 코딩수업"
>>> my_index[3]
'의'
>>> my_index[6]
'딩'
>>> my_index[-1]
'업'
# [-1]은 맨 뒤에서 index -2(수) -1(업)
•slicing : 슬라이싱
: 한개의 index값이 아닌 여러개의 index값 뽑아오기
>>> my_index[1:4] #1부터 4앞까지 즉 3
'란이의'
•string.split()
: 문자열을 "공백" 단위로 잘라준다.
: string만의 method이다.
>>> my_index.split()
['권란이의', '코딩수업']
#다른 예제
>>> fruit_str = '거봉 수박 포도 복숭아 망고 딸기 배 참외'
>>> fruit_str
'거봉 수박 포도 복숭아 망고 딸기 배 참외'
>>> fruits = fruit_str.split()
>>> fruits
['거봉', '수박', '포도', '복숭아', '망고', '딸기', '배', '참외']
#fruit_str의 문자들을 split()을 사용해서 공백 단위로 자른 뒤 fruits이란 변수에 담아준다.
•Docstring
: 문자열 사용시 따옴표 쓰는 것을 주석으로 사용하자!
•print(",end=")
: 출력의 끝을 지정해준다. 원래 print하게 되면 출력의 끝에 end=''안에 들어가는 내용들을 함께 넣어준다.
>>> print("hello", end="bye")
hellobye
•Escape code
: 특정 기능을 수행하는 문자의 조합. \n(enter), \t(tap)
>>> print('what your name\n?')
what your name
?
추천 사이트 : python object 볼 수 있음
Python Tutor - Visualize Python, Java, C, C++, JavaScript, TypeScript, and Ruby code execution
VISUALIZE CODE AND GET LIVE HELP Learn Python, Java, C, C++, JavaScript, and Ruby Python Tutor (created by Philip Guo) helps people overcome a fundamental barrier to learning programming: understanding what happens as the computer runs each line of code. W
www.pythontutor.com