2강 듣는 도중 첫언어와 함께 앞으로 주력이자 스페셜티로 키울 언어를 선택하느라
전현직에 여러 유튜버들의 이야기와 구글링으로 찾아보고
마지막에는 취업에 유리한 자바와 내가 하고싶고 만들고 싶고 또 가장 인기있는 언어로 떠오르면서 할게 많은 또 쉬운 파이썬으로 나눠서 많은 고민과 또 자료를 찾아보는데 시간이 꽤나 들어갔다.
구인구직 싸이트도 돌아보면서 어떤 언어가 많이 필요한지 구인글들 살펴보고 역시 자바를 해야되나 고민하다가
어떤 영상에 한 글을 보고 파이썬으로 마음 먹었다. 국비지원 학원 계속 알아보다가 이분은 순수 독학으로 스타트업에 취직하셨다고 한다. 나처럼 신입으로 가기엔 나이도 많고 비전공자이셨다고 해서 용기를 얻었다. 공장에서 찍어내는 듯한 포트폴리오를 준비하기보다 나의 독창적인 창조물들로 승부를 보려고 한다.
와중에 여러 커뮤니티와 생활코딩과 파이썬 오픈톡에 들어가서 안풀리는 문제들을 바로 물어볼 수 있는 곳도 찾아놨다.
1강이 내용이 좀 적고 듣기 쉬워서 빠르게 끝났지만, 본격적으로 여러 명령어들을 배우는 강의로 들어갔다
10개도 안되는 강의로 책 한권을 끝낼려니 역시 강의 하나의 양이 만만치 않다
단순히 영상을 보기만 하는게 아니라 명령어 하나하나 개념을 이해하고
vs code에서 해보고 형태도 조금씩 바꿔보면서 어떤 명령어가 어떤 형태로 쓰이고 실행되는지 해보고 하니
생각보다 좀처럼 진도가 잘 안나간다ㅠㅠ
출처
www.youtube.com/watch?v=3R6vFdb7YI4&list=PLU9-uwewPMe2AX9o9hFgv-nRvOcBdzvP5&index=3&t=171s
교재 : 점프 투 파이썬
<목차>
1.자료형
2.숫자형
<프로그래맹의 기초, 자료형>
※자료형이란? 컴퓨터는 사람처럼 문자인지 숫자인지 구분을 못하게 때문에 이걸 알려주기 위해, 프로그램 형식에 따라 사람이 알려줘야함. 이것이 자료형.
1+1=2 1이 숫자로 이해되는 것이지만, 스타1 스타2처럼 동시에 문자1로도 쓸 수 있다. 즉, 문자의 값을 숫자로 인식할지 문자로 인식할지 구분해야함 숫자를 문자로 인식 할려면 '(숫자)'를 쓰면 된다.
숫자 : 1+1=2 문자 : '1'+'1'='11' |
자료형의 종류
1)자료에 대한 타입 : 숫자 문자열 불(리안)
2)타입이면서도 어떤 값을 담는 자료구조 : 변수, 리스트, 튜플, 딕셔너리, 집합
※변수란? 어떤 값을 담는 상자
ex) a=3 3이라는 숫자 자료를 a라는 상자에 담는다
a=a+1 오른쪽에 있는 값을 왼쪽 상자(변수)에 넣는다 a=3 a=a(3)+1 a는 4 |
print(type(a)) : 어떤 자료가 문자인지 숫자 알고 싶을 때
-런 시키면 class 'int'라는 식으로 알려줌
ex) a="hello world" 결과값 :
02-1 숫자형
정수형 (1,2,-2) : int.
실수 (1.24, -34.56) : float. 소수점숫자들
컴퓨터식 지수 표현 방식 (4.24e10, 4.24e-10)
8진수 (0o37)
16진수 (0x7A)
사칙연산
ex)
a=3
b=4
print(a*b) : 곱하기 → a 곱하기 b = 결과값 12
print(a/b) : 나누기 → b를 a로 나누기 = 결과값 0.75
print(a//b) : 몫 → 4 ÷ 4의 몫은 1
print(a%b) : 나머지 → b를 a로 나누고 남은 몫을 결과값으로. = 결과값3
print(a**b) : 제곱 → 위 ab값을 대입해서 a의 b제곱 = 결과값 81
print(a*100) : a가 '문자열'로 지정해놨다면 a를 백번 출력함
02-2 문자열 자료형
문자열 자료형 = str = string
A.문자열 자료형 만드는 방법
- " 큰 따옴표 : "hello world"
- ' 작은 따옴표 : 'python is fun'
- """ 큰 따옴표3개 : """Life is too short, You need python"""
- ''' 작은 따옴표3개 : '''Life is too short, You need python'''
※문자열 자료형 만드는 방법 4가지나 되는 이유
영어문장의 어퍼스트로피( ' )와 겹쳐 구별 안됨 ex) ashely's home
사람의 직접적 말을 언급할 때 쓰는 " "과도 겹침
>>>food = 'Python's favorite food is perl"
>>> say = '"Python is very easy." he says.'
>>> food = 'Python\'s favorite food is perl' \(다음 오는 ' or " )를 쓰면 문자열로 인식함
>>> say = "\"Python is very easy.\" he says."
B.이스케이프 코드
프로그래밍할 때 사용할 수 있도록 미리 정의해둔 '문자 조합'
-한줄씩 읽는 파이썬에서 열을 바꾸고 싶을 때 쓰는 명령어
\n : 문자열 안에서 줄을 바꿀 때 사용
\t : 문자열 사이에 탭 간격을 줄 때 사용
\\: 문자를 \를 그대로 표현할 때 사용
\' : 작은따옴표(')를 그대로 표현할 때
\" : 큰따옴표(")를 그대로 표현할 때
09:45
문자열을 더해서 연결할 수 있음
C.문자열 인덱싱(Indexing)
print(a[1]) : 결과 i
print(a[-1]) : 결과 n - 지정된 범위의 문자열의 뒤부터 새는것
print(a[-2]) : 결과 o
D.슬라이싱(slicing)
a[0:4] : 0부터4까지 출력해라
이상 안쓰면 기본적으로 0부터 시작
미만 안쓰번 기본적으로 끝까지
간격 안쓰면 기본적으로 1칸
E.문자열 포매팅
a와 b는 같은 식임. b처럼 쓰기에 너무 길어서 포매팅으로 a처럼 쓸 수 있음
a = "I eat %d apples." %3
b = "I eat " + str(3) + "apples"
number = 10
day = "three"
a = "I ate %s apples. so I was sick for %s days." % (1.2, day)
print(a)
결과값 : I ate 1.2 apples. so I was sick for three days.
a = "1234 { } 1234" .format("안녕")
print(a)
결과값 : 1234 안녕 1234
F.문자열 포맷 코드
%s : 문자열(string)
%c : 문자1개(character)
%d : 정수(interger)
%f : 부동소수(floating-point)
%o : 8진수
%x : 16진수
15:50
G.정렬과 공백
a = "%10s" % "hi"
print(a)
결과값 : (공백10칸) hi
"%-10sjane." % 'hi'
결과값 : 'hi (공백10칸) jane.'
H.소수점 표현
ex) %0.4f
0(띄어쓰기간격) . 4(소수점 짜르는 자릿수)
"0.4%f" % 3.42134234
결과값 : '3.4213
"%10.4f % 3.42134234
결과값 : ' (공백10칸) 3.4213
I.문자열 개수 세기(Count)
.count( )
a = " hobby"
a.count('b')
결과값 : 2 - a안에 b라는 문자가 2개 있는 것을 찾음. 그래서 결과값 2
J.위치 알려주기(Find)
a = "python is best choice"
a.find('b')
결과값 : 10
a = " hobby"
print(a.find('b'))
결과값 : 2 - hobby에서 첫번째 b가 인덱스 012해서 찾아서 나온 값
- 가장 먼저 나오는 b의 인덱스 함수를 찾아오는 것
K.위치 알려주기2 (index)
a = "Life is too short"
a = a.index('t')
결과값 : 8
- 인덱스의 경우 있으면 결과값 리턴, 없으면 에러
L.문자열 삽입(join)
a = " , "
a.join('abcd')
결과값 : 'a,b,c,d'
- 조인값 안에 문자 사이 하나하나마다 a 안에 값을 하나씩 넣는것
M.대소문자 바꾸기(upper & lower)
a = "hi"
a.upper( )
결과값 : 'HI'
소문자는 반대로임
N.양쪽 공백 지우기(strip)
a = " hi "
a.strip( )
O.문자열 바꾸기( replace )
a = "Life is too short"
a.replace("Life", "Your leg")
결과값 : 'Your leg is too short'
- life 자리의 단어를 원하는 다른 단어로 바꾸는 것
P.문자열 나누기 ( split )
a = "Life is too short"
a.split( )
['Life', 'is', 'too', 'short']
02-3 리스트 자료형
List : 변수를 많아지면 관리가 어려워져서, 여러 개 묶어서 관리하기 좋은 장점이 있음
a = ["python","Java","JS","php"]
print(a[1]) - 1은 인덱스값
결과값 : 자바
a = [1,2,"int","실수",["정수","소수"]]
print(a[4][0])
결과값 : '정수' - 01234에서 4가 ["정수","소수"]고 거기서 01다시 세서 그중에 0인 정수 출력
- 리스트 속에 리스틀르 계속 넣어서 응용 가능
1.리스트의 인덱싱
a = [1,2,3]
a = [0]
결과값 : 0
a[0] + [2]
결과값 : 4
a[-1]
결과값 : 3
2.리스트의 슬라이싱
a = [1,2,3,4,5,]
a[0:2]
결과값 : [1,2]
b = a[ : 2]
c = a[ 2: ]
결과값 : b
a = [1,2,3]
b = [4,5,6]
print(a+b)
결과값 : [1,2,3,4,5,6]
3.리스트에서 하나의 값 수정하기
a = [1,2,3]
a[0] = 0
결과값 : 0,2,3
4.리스트에서 연속된 범위의 값 수정하기
a = [1,2,3]
a[0:2] = [4,5]
결과값 : 4,5,3
5.리스트 요소 삭제하
1) [] 사용
a = [1,'a','b','c',4]
a[1:4] = []
print(a)
결과값 : [1,4]
2) del 함수 사용
a = ["힘내","감사","긍정"]
del a[0]
print(a)
결과값 : ['감사','긍정']
6.리스트에 요소 추가하기 (append)
a = ["감사","긍정"]
a.append("힘")
print(a)
결과값 : ['감사', '긍정', '힘']
7.리스트 정렬(sort)
a = [1,4,3,2]
a.sort()
결과값 : [1,2,3,4] - 가나다순, 숫자는 작은수에서 큰수로 정렬됨
8.리스트 뒤집기 (reverse)
a = ['a','b','c']
a.reverse()
결과값 : ['c','b','a']
- 순서 역으로 뒤집기인듯
9.위치반환 (index)
a = [1,2,3]
print(a.index(3))
결과값 : 2 - 3이라는 걸 a에서 찾고 있으면 012위치에 위치함으로 2를 출력한 것
10.리스트에 요소 삽입 (insert)
a = [1,2,3]
a.insert(0,4)
결과값 : [4,1,2,3,] - 0번쨰 인덱스에 4를 추가해라는 뜻
11.리스트 요소 제거 (remove)
a = [1,2,3,1,2,3]
a.remove(3)
결과값 : [1,2,1,2,3,] - a 함수 중 3이라는 값을 지워라(발견된 첫번째 값만 지움. 여러 개 있더라도)
24:50
12.리스트 요소 끄집어내기 (pop)
a = [1,2,3]
print(a.pop())
print(a)
결과값 : 마지막값인 빼낸 3과 다시 프린트 한 a [1,2]
13.리스트에 포함된 소 X의 개수 세기 (count)
a = [1,2,3,1,1]
print(a.count(1))
결과값 : 3 - a안에 있는 1을 전부 세는 것
14.리스트 확장 (extend)
a = [1,2,3]
a.extend([4,5])
print(a)
결과값 : [1,2,3,4,5]
(코드 이어서)
b = [6,7]
a.extend(b)
print(a)
결과값 : [1,2,3,4,5] 와 [1,2,3,4,5,6,7]
- a에 4,5,을 추가로 붙이고 b에서 추가로 추가된 a에 다시 b값을 붙여서 1-7까지해서 두번 출력됨
ㅁ
'Python' 카테고리의 다른 글
조코딩 파이썬 1강 정리 및 복습 (0) | 2021.04.18 |
---|