상세 컨텐츠

본문 제목

프로그래머 도전기 7일차

프로그래머가 될거야!

by Choyee 2023. 9. 4. 00:28

본문

이번 7일차 부터는 이클립스를 통한 자바 기초를 끝내고

비주얼 스튜디오 코드를 이용해 파이썬 기초에 대해서 배우기 시작했습니다

자바를 배울 때랑 비슷한 점이 많아서 훨씬 수월하게 배우고 있는 것 같습니다

그리고 이클립스를 사용할 때 보다 

비주얼 스튜디오 코드를 사용할 때가 좀 더 쉬운듯한 느낌이 들었습니다

비슷한 내용을 배우고 있어서 그런것일지도 모르겠네요

아무튼 자신감이 늘어가고 있는 7일차였습니다

 

 

<변수>

변수할당 => '변수의 이름 = 저장할 값'

a=100. b=200
a,b=b,a+b 
=> '='는 마지막 순위
     '+' 가 '=' 보다 우선 순위가 높다

식별자 생성 규칙
- 변수의 이름 = 문자, 숫자, 밑줄(_) 포함 가능
                   => 특수문자 !,@ 등 불가능
- 변수의 이름은 숫자로 시작할 수 없다 => ex. 1name X
- 공백을 포함할 수 없다 => ex. red_apple
- 예약어(key word) = 변수로 사용 불가능

변수의 이름은 알기 쉽게 만들자

터미널 지우기 => cmd에 cls 입력


<정수>

정수 = +양수, -음수, 0
정수를 표현하는 int형


<실수>

부동소수점 = 소수점 이하를 가지는 수


<복소수 complex 자료형>

복소수와 복소수 연산들이 필요할 때 사용하는 자료형
일반 수학에서의 복소수 = a + bi
파이썬에서의 복소수 = a + bj

 

0123


<string(문자열) 형>

탈출문자 = \', \", \\, \n, \r, \t
               \n = 개행 문자 = 행을 바꿔줌
               \r = 캐리지 리턴 = 이후의 문자열의 커서가 앞의 문자열을 덮어 씌움
               \t = 탭 문자 = 커서를 다음 여덟번째 위치로 이동시킨다
               => ''' = 개행을 간단하게 사용 가능


</print 함수>

sep = 구분자 안을 지정하는 문자로 바꿔줌
end 속성 = 프린트 안에 아무것도 입력하지 않아도 자동으로 개행을 시켜줌

012


<내장함수와 메서드>
내장함수 -> ex. print() = 어떠한 기능을 가진 코드
메서드 -> ex. str.upper() = / . = 참조연산자/ => 특정한 데이터에서만 사용할 수 있는 함수
=> 함수 앞에 . 이 붙어있다 = 메서드라고 생각하면 된다


<bool(논리) 자료형>

True = 참
False = 거짓
=> 결과값이 참, 거짓 으로만 나온다
=> 다른 자료형에서도 참, 거짓의 결과값은 존재
     -> 거짓이 아니면 모두 참 
     -> 거짓인 경우 = False 인 경우
                            0에 해당하는 값
                            빈 문자
                            [ ], ( ), { } => 안의 요소가 비어있는 경우
                            Null


<연산자>

* 산술 연산자 = 기본 연산자 +, -, *, / 
                     몫을 구하는 연산자 //
                     나머지를 구하는 연산자 %
                     제곱을 구하는 연산자 **

* 자료형을 다른 자료형으로 바꾸기 
   = 정수형변환 => int를 사용하여 변환 => 실수형, 논리형, 문자열 -> 정수형으로 변환
   = 실수형변환 => float를 사용하여 변환 => 정수형, 논리형, 문자열 -> 실수형으로 변환
   = 문자열자료형변환 => str을 사용하여 변환 => 모든 자료형 -> 문자열자료형으로 변환
   = 논리형변환 => bool을 사용하여 변환 => 모든 자료형 -> 논리형으로 변환

* 비교연산자 = >, <, >=, <=
                    논리형 자료 비교도 가능 => True = 1, False = 0 의 값을 갖기 때문
                    문자형 자료 비교 가능 => 대문자가 소문자보다 큰 값을 가짐
                    복합대입연산자 = 산술연산자와 대입연산자를 합쳐서 사용
                    비교연산자를 사용하여 -> bool 자료형 표현 가능

* and 연산자 = 양쪽의 값이 모두 참일 경우 => 결과값은 True // 하나의 값이라도 거짓일 경우 => 결과값은 False
                     True + True = True
                     True + False = False
                     False + True = False
                     False + False = False
* or 연산자 = 하나의 값이라도 참일 경우 => 결과값은 True // 양쪽의 값이 모두 거짓일 경우 => 결과값은 False
                    True + True = True
                    True + False = True
                    False + True = True
                    False + False = False
=> and, or 연산자의 우선순위 = and 연산자의 우선순위가 더 높다

* not 연산자 = 참을 거짓으로, 거짓을 참으로 뒤집어주는 연산자

* 연산자들의 우선순위
   = "**제곱" => "+양수,-음수" => "*곱하기, /나누기, %나머지, //몫" => "+덧셈, -뺄셈"
        => "<, <=, >=, >비교" => "==, !=평등" => "=, %=, /=, //=, +=, *=, **=대입"
   => 연산자들의 우선순위를 정해주고 싶다면 -> 괄호 사용

 

0123


<문자열 인덱싱>
인덱스 = 수열같은 곳에서 특정한 위치를 지정하는 것
문자열 인덱싱 = 문자열에서 (지정한 인덱스에서) 문자를 뽑아내는 기능
                   = 양수 => 0부터 시작 0 1 2 3 4
                      음수 => -1부터 시작 -5 -4 -3 -2 -1
                   = 문자열의 인덱스
                       S   T   R   I   N   G        I   N   D   E   X
                       0   1   2   3   4   5   6   7   8   9   10  11 => 공백도 포함O
                     -12 -11 -10 -9  -8  -7  -6  -5  -4  -3  -2  -1

<문자열 슬라이싱>
문자열 슬라이싱 = 문자열에서 범위를 지정 그 범위 안에 있는 문자들을 추출 가능
                      = 마지막 위치의 요소는 포함하지 않음
                         ex) print("0 1234567 8 9"[0:8])
                                      0(n)         8(m)
                              => 01234567
                                   = 마지막 m위치의 요소는 포함하지 않음
                              => 전체 문자열을 추출하고 싶다면 + 1을 해야한다 = [0:10]
                         ex) print("01 2 345678 9"[-8,-1])
                                         -8(m)      -1(n)

                              => 2345678
                                   = 마지막인 n위치의 요소는 포함하지 않음

* step 사용 = 몇개씩 끊어서 가져올 것인지 지정
                ex) print("0 12345678 9"[0:10:2])
                            0(n)  +2씩   10(m)  
                     = 0,2,4,6,8

 

01



<문자열 포매팅>
 = 문자의 출력 형식을 지정해주는 것
 => 방법 = persent sign(%), format 함수, f-string

* 문자 = 왼쪽 정렬
  숫자 = 오른쪽 정렬

* 데이터 타입 - 문자형 타입 = s
                   - 정수형 타입 = d 
                   - 실수형 타입 = f
                   - 8진수 = o
                   - 16진수 = x 

01


<메서드>
내장함수 = print() => 괄호 안에 인자를 넣어서 사용
메서드 = .upper() => .(참조연산자)를 이용해서 특정한 데이터를 참조해서 사용

* 내장함수 - len(length의 약자) = 요소값의 갯수, 요소의 갯수, 문자의 길이
* 문자열 메서드 - capitalize = 문자열에서 가장 첫번째 글자를 대문자로 변경 해주는 메서드
                                     = 변수이름 . capitalize( )
                     - upper = 대문자로 변경
                     - lower = 소문자로 변경
                     - count = 문자열 안에서 찾고자 하는 요소의 갯수를 출력(갯수의 결과값을 반환)
                     - find = 문자열 안에서 찾고자 하는 요소의 위치를 출력(위치의 결과값을 반환)
                     - index = 문자열 안에서 찾고자 하는 요소의 위치를 출력(위치의 결과값을 반환)
                        * find - index 차이점 = 문자열 안에서 찾고자 하는 요소가 없는 경우
                                                        => find = -1의 값을 반환 / index = ValueError가 난다
                        * find, index -> 'r'을 붙여 오른쪽에서부터 인자들을 찾을 수 있다 (rfind, rindex)
                     - replace = 문자를 치환해줌  => 앞에 있는 값을 뒤에 있는 값으로 변경
                        -> ooo.replace("A" , "B") => A를 B로 변경
                     - split = 괄호 안의 인자값에 따라서 문자열을 분리해주는 기능
                     - strip = 문자열의 공백을 없애주는 기능 => 문자 사이사이의 공백은 없애지 못함

                                                                                           = 문자열 양 옆의 공백만 없애줌

 

0

 

 

2023. 09. 03 (일)

관련글 더보기