파이썬 기초 문법2

category
URL
date
Jan 4, 2023
slug
python-2
author
status
Public
tags
Playdata_Python
summary
변수 명명 규칙, literal, 연산자, 자료형, 인덱싱.슬라이싱.함수
type
Post
thumbnail
updatedAt
Feb 2, 2023 02:10 PM

변수 명명 규칙

  • 변수명은 문자, 숫자, 언더바(_)를 이용해 만듬
  • 숫자로 시작하는 변수명은 만들 수 없다.
  • 대소문자를 구분한다
  • 공백을 포함할 수 없다
  • 예약어는 변수명으로 사용 할 수 없다
  • 보통 snake_case를 활용하여 명명하도록 권장

Snake case

  • 단어와 단어를 구분하기 위해 언더바( _ )를 사용하는 방식

Pascal case

  • 단어의 제일 첫 글자는 무조건 대문자, 나머지 단어는 소문자로 표기
  • 주로 클래스 명칭을 지을 때 권장

Camel case

  • 제일 앞에 오는 단어는 모두 소문자 작성
  • 다음 단어부터 첫 글자만 대문자로 나머지는 소문자로 작성 이때 단어와 단어 사이에 공백 없이 붙여쓴다. ex) justDoit

변수

  1. 변수를 삭제할 때는 del 명령어를 사용 ex) del x
  1. 변수에 빈 값 할당하기
      • 변수의 값을 없앨 땐 None을 할당
      • 보통 다른 언어에서의 null(널)과 같다.
      notion image

상수(constant)

  1. 변수와 상반되며, 변하지 않는 값
  1. 파이썬에선 키워드를 통해 상수를 만드는 방법은 없음

bool literal

  • 파이썬 bool type의 리터얼은 True와 False가 있음.
  • 대소문자를 구분하며 true / false 혹은 TRUE / FALSE 처럼 표기할 수 없다.
  • 반드시 첫 글자는 대문자로 하고 나머지는 소문자로 하는 True / False로만 입력 가능
notion image
notion image

논리 연산자(Logical operator)

논리 연산자
의미
활용 예
활용
and
논리곱
A and B
A와 B 모두 참일 때만 참, 나머지는 거짓
or
논리합
A or B
A와 B중 하나라도 참이면 참, 둘 다 거짓일 때만 거짓
not
논리 부정
not A
A가 참이면 거짓이고, 거짓이면 참
  • 논리 연사자를 이용한 진리표
A
B
A and B
A or B
not A
True
True
True
True
False
True
False
False
True
False
False
True
False
True
True
False
False
False
False
True

비교 연산자(Comparison operator)

논리 연산자
의미
활용 예
활용
==
같다
A == B
A는 B와 같다
!=
같지 않다
A != B
A는 B와 같지 않다.
<
작다
A < B
A는 B보다 작다.
>
크다
A > B
A는 B보다 크다.
<=
작거나 같다
A <= B
A는 B보다 작거나 같다.
>=
크거나 같다
A >= B
A는 B보다 크거나 같다.

연산자 우선순위 정리

우선 순위
연산자
설명
1
(값,…),[값,…], {키:값….},{값….}
tuple, list, dictionary, set 생성
2
x[인덱스],x[인덱스:인덱스], x(인수…),x,속성
list(tuple) 첨자, 슬라이싱, 함수 호출, 속성 참조
3
await x
await 표현식
4
**
거듭제곱
5
+x,-x,~x
단항 덧셈(양의부호),단항 뺼셈(음의 부호), 비트 NOT
6
*,@,/,//,%
곱셉, 행렬 곱셉, 나눗셈, 버림 나눗셈, 나머지
7
+,-
덧셈,뺄샘
8
<<,>>
비트,시프트
9
&
비트 AND
10
^
비트 XOR
11
|
비트 OR
12
in,not in, is, is not, <, <=, >, >= !=, ==
포함 연산자, 객체 비교 연산자, 비교 연산자
13
not x
논리 NOT
14
and
논리 AND
15
or
논리 OR
16
if else
조건부 표현식
17
lambda
람다 표현식

문자열 리터럴

  • 작은 따옴표(’…’) 혹은 큰 따옴표(”…”)를 사용하여 표현 가능
  • 작은 따옴표와 큰 따옴표 모두 같은 결과를 줌
notion image
  • don’t do that 이라는 문자열 리터럴을 선언하는법
      1. 작은 따옴표 앞에 역 슬래시 \ 를 붙여 문자열 리터럴의 끝을 나타내는 ‘가 아닌 문자 그대로의 ‘임을 표시
      1. 큰 따옴표로 문자열 리터럴의 범위를 나타내고 “…” 그 안에 작은 따옴표를 표시
  • 문자열 리터럴에 줄바꿈을 하려면 개행 문자인 \n 사용
    • notion image
       
  • \n을 그대로 출력하고 싶은 경우
      1. raw string으로 표현 가능 raw string으로 문자열 리터럴을 만드려면 r을 맨 앞에 붙인다.
      1. \를 앞에 붙여 \를 문자 그대로 출력
      notion image
       
  • 삼중 따옴표를 사용하면 여러 줄로 확장하여 문자열 리터럴을 만들 수 있다. 이때는 개행 문자를 사용하지 않음
notion image
  • 삼중 따움표를 사용하면서 Enter키로 줄은 바꿨지만 출력될 때는 줄 바꿈되지 않게 하는 방법으로 역 슬래시 \를 활용
notion image
 
  • *를 사용하면 문자열의 반복을 쉽게 할 수 있다. 또 +를 사용하면 문자열과 문자열을 이을 수 있다.
notion image

시퀀스 자료형(Sequence types)

  • 순서에 따라 연속적으로 값들을 갖는 자료형
  • 모든 시퀀스 형은 인덱싱과 슬라이싱이 가능
notion image
 

인덱스(index)

  • 시퀀스 자료형은 순서를 갖기에 각 요소마다 이 순서를 통해서 접근 가능
  • 인덱스는 0부터 시작
  • 시퀀스 형들은 크기가 제각각
  • 인덱스가 -1인 항목이 제일 마지막 항목
    • ex) 변수명[인덱스 숫자]

문자열 인덱스

  • 문자열 리터럴은 각 하나의 문자들이 합쳐진 시퀀스
  • 인덱스를 활용하여 해당 위치에 있는 각각의 문자를 가져올 수 있다.
notion image

시퀀스 자료형 순방향으로 인덱스 접근하기(O,양수)

notion image

시퀀스 자료형 순방향으로 인덱스 접근하기(음수)

notion image

인덱스 에러

  • 인덱스는 시퀀스 자료형이 갖는 범위 내에서만 사용 가능
  • 이 범위를 넘는 경우엔 IndexError가 발생
 

문자열 슬라잉싱

  • 문자열 리터럴에서 부분 문자열(substring)을 얻기 위한 방법
  • 범위에 해당하는 요소들을 가져오는 방법
  • 인덱스와 동일하게 중괄호 안에 범위를 표현하며, 시작 인덱스:끝 인덱스 형태로 작성
notion image
  • 총 3개의 파트로 구성, 구분자는 클론(:)
    • → 형태는 변수명[시작 숫자(이상) : 끝 숫자(미만):증감 크기]
  • 첫 요소부터 포함하는 범위일 때 시작 숫자 생략 가능 마지막 요소까지 포함하는 범위일 때 끝 숫자는 생략 가능 증감 크기가 1일 때 증감 크기 생략 가능
notion image
 

문자열 슬라이싱 표현 범위

  • 인덱스 범위를 벗어나도 유연하게 처리됨
  • 인덱스에 대해서만 표현 가능하다면 값을 포함하지 않는 “끝 숫자”의 범위가 표현 불가능
notion image

문자열 변경 불가 예제(인덱스)

  • 문자열은 불변(immutable)의 특징을 가지고 있음
  • 문자열을 인덱스로 접근해서 값을 변경 할 수 없음
 

문자열 변경 불가 예제(슬라이싱)

  • 문자열을 슬라이싱으로 접근해서도 값을 변경할 수 없다.
 

문자열을 변경하고 싶다면? 🙄

  • 문자열은 불변(immutable)이다. → 새로운 문자열 리터럴을 만들어서 변수의 값에 다시금 할당해서 변경해주면 된다.
notion image

시퀀스의 크기

  • 시퀀스의 크기를 알아 낼 수 있는 방법 → len(시퀀스변수명) 함수를 사용하면 쉽게 알 수 있다.
notion image