728x90

  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.문자열 자료형 만드는 방법

  1. " 따옴표 : "hello world"
  2. ' 작은 따옴표 : 'python is fun'
  3. """ 따옴표3 : """Life is too short, You need python"""
  4. ''' 작은 따옴표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까지해서 두번 출력됨

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

'Python' 카테고리의 다른 글

조코딩 파이썬 1강 정리 및 복습  (0) 2021.04.18
728x90

 

출처
www.youtube.com/watch?v=yytWGELNeOI&list=PLU9-uwewPMe2AX9o9hFgv-nRvOcBdzvP5&index=2

 

1.파이썬 특징

인간다운 언어

빠르고 쉽게 배움가능

 

무료

C언어와 찰떡궁합(접착언어)

- 상대적으로 느린 파이썬 + C언어 조합가능

- 파이썬 library 중에 c로 만들어진 것도 多

 

※why? 파이썬은 왜 상대적으로 느린가?

컴파일 언어 : 빠름 / 인간언어(ex.영어)를 기계어로 변환하는 것 / 컴터가 바로 번역하여 읽어서 빠른 것

인터프리터 언어 : 느림 / 인터프리터를 한번 거쳐서 한줄 한줄씩 읽어서 다소 느린것

(컴터는 0과 1만 인식. 인간의 언어를 바로 컴터가 인식불가)

 

실행 되게 하려면 꼭 줄을 맞춰야한다

-규칙? 폼?을 잘 맞춰야한다

 

개발 속도가 빠르다

간결하다

C,C++과 결합가능

인공지능 라이브러리 많음

 

2.파이썬으로 무엇을 할 수 있을까

A.시스템 유틸리티 제작

 ex)최적화 프로그램 등

B. GUI 프로그램

 (그래픽 유저 인터페이스 : 사용자가 편리하게 사용할 수 있도록 기능을 그래픽으로 나타낸것)

C.웹프로그래밍

 ex)django,Flask

D.수치연산프로그래밍

 ex)SQL etc

E.데이터 베이스 프로그램

 -데이터를 저장하는 프로그램

 ex)주식,인공지능,IoT,주가 날씨 예측 등

 

주력 : 데이터분석, 인공지능, IoT기기, 웹서비스

 

3.파이썬으로 할 수 없는 것

A.앱개발

-불가능은 아니나 거의안함. 백엔드(서버) 쪽은 가능하나 프론트 쪽은 어렵다.

-앱개발은 안드 kotlin Java 아이폰은 Swift 사용

B.모바일 프로그램

C.윈도우,리눅스 등 운영체제

 -로우레벨 언어를 사용해야 운영체제 만들기 가능

 

 


본격 실습스타트

파이썬 싸이트에서 다운 및 설치

 

시작에서 python 실행

IDLE python 코딩 색분할,런모듈 실행결과 보여줌 기능추가된

 

*IDLE이란?

통합개발환경. 코딩,디버그,컴파일,배포 프로그램 개발 관련 모든 작업을 하나의 프로그램 안에서 처리할 있게 돕는 소프트웨어

 

Hello.py 확장자 파일 생성

 

실행에서 cmd

명령어를 cd c:\jocoding

Cd 체인지 디렉토리임. 해당 주소로 이동해라는

Cmd에서도 파이썬 코드를 실행해볼 있음!

- 아마도 로우레벨 언어나 백엔드 같이 고수준의 개발에서 이런 것들의 이해가 필요할 같음

 

Visual Studio Code 설치

-path에추가 체크할것
extensions
설치

익스텐션 : 편리하게 이것저것 도와주는 도구들임

Open editors에서 새로 추가해서 파일 만들때, (파일이름).확장자 해서 만들고 저장해야함

- .py파이썬 .html .css

 

Vs code 프로그램 상단탭에 terminal 클릭 - new terminal

하단에 cmd 같이 나옴(vs code cmd 내장하고있는것)

-경로가 있을 경우에는 python 쳐주고 나서야 print 같은 파이썬 코딩 명령어가 먹힘

-레펠이라고 >>> 표시가 나와야

 

↑키를 누르면 이전 명령어 나옴

>>>에서 바로 1+1 같은 더하기 나누기 연산 가능

 

 

 

 

728x90
반응형

'Python' 카테고리의 다른 글

조코딩 파이썬 2강 정리 및 복습  (0) 2021.04.23

+ Recent posts