Study/AI

[Python] 파이썬의 기초문법

motti 2023. 3. 12. 12:44
반응형

1) 변수

  • 변수란 프로그램에서 사용하기 위한 특정한 값을 저장하는 공간이고 선언 되는 순간 메모리 특정영역에 물리적인 공간이 할당된다. 즉, a = 8의 의미는 “A는 8이다”가 아닌 A라는 이름을 가진 메모리 주소에 8을 저장하라이다.
  • 자료형 : interger,float,string,boolean
  • 리스트 : 시퀀스 자료형으로 여러 데이터들의 집합
  • 인덱싱 : 리스트에 있는 값들은 주소를 가지는데 이 주소를 인덱싱이라 함.
  • 슬라이싱 : 리스트의 값들을 잘라서 쓰는 것
  • 패킹 : 한 변수에 여러 개의 데이터를 넣는 것
  • 언패킹 : 한 변수의 데이터를 각각의 변수로 반환

2) 함수와 콘솔

  • 함수란 어떤 일을 수행하는 코드의 덩어리
  • def f(x): return 2*x+7
  • f(2) = 11
  • parameter : 함수의 입력 값. 위에서 f(x)의 x에 해당하는 부분
  • argument : 위에서 f(2)에서 2에 해당하는 것
  • formatting = %string , format함수, f-string이 있음

3) 조건문과 반복문

  • 조건문이란 조건에 따라 특정한 동작을 하게하는 명령어
  • 파이썬은 조건문으로 if,else,elif 등의 예약어를 사용함
  • 파이썬에서 10 < a < 20 와 같은 식은 추천하지 않고 10 < a and a < 20과 같은 조건으로 하는거 추천한다. 이는 다른 언어에서는 전자같은 방법이 실행되지 않는다.
  • 반복문이란 정해진 동작을 반복적으로 수행하게 하는 명령문
  • 파이썬은 반복문으로 for,while 등의 명령 키워드를 사용
  • 반복의 제어 : break , continue

4) 문자열과 함수 가이드 라인

  • .lower() : 소문자로
  • .split(” “) : 공백기준 띄어쓰기
  • .isdigit() : 숫자로 구성되어있는지
  • .title() : 첫 글자만 대문자로
  • .count() : 원소가 몇개 있는지
  • .strip() : 좌우 공백을 없앰(rstrip,lstrip)
  • .islower() : 문자열이 소문자인지
  • 파이썬 함수 호출 방식(Call by Object Reference)에서 파이썬은 객체의 주소가 함수로 전달되는 방식으로 전달된 객체에서 참조하여 변경 시 호출자에게 영향을 주나, 새로운 객체를 만들 경우 호출자에게 영향을 주지 않는다.
  • 파이썬은 dynamic typing으로 처음 함수를 사용하는 사용자가 interface를 알기 어렵다는 단점이 있다. 이를 해결하기 위해 type hint를 사용한다.
  • 함수를 작성할시 동사 + 목적어 순서를 추천한다/

5) 데이터 구조

  • 스택 : 나중에 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조(append,pop 사용)
  • 큐 : 먼저 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조(append,pop(0) 사용)
  • 튜플 : 값을 변경하지 못해 변경하면 안되는 데이터를 저장할때 사용한다
  • 집합 : 값을 순서없이 저장, 중복을 허용하지 않는다.
  • 딕셔너리 : 데이터를 저장 할 때 구분 지을 수 있는 값을 함꼐 저장한다.
  • Collections : list,tuple,dict에 대한 확장 자료 모듈

6) Pythonic

  • split : 문자열을 기준값으로 잘라내어 리스트에 저장
  • join : 기준값을 기준으로 합침
  • list comprehension : [i for i in range(10)] 처럼 한 줄로 표현 가능 추가로 [i for i in range(10) if %2 == 0] 처럼 조건을 넣어줄 수도 있음
  • enumerate : 고유한 번호와 같이 출력
  • zip : 두 개의 list의 값을 병렬적을 추출
  • lamba, map, reduce : 데이터에 일괄적으로 적용할 때 사용
  • generator : 메모리를 적게 사용하여 시퀀스 자료형에서 사용
  • keyword arguments : 파라미터에 값을 직접 지정해줌
  • 가변인자 : 일반적으로 *args로 지정함. 지정되지 않은 파라미터는 튜플형태로 args에 들어감
  • asterisk(*) : 그냥 사용하면 unpacking의 역할. 가변인자로 사용하면 튜플로 들어간다.
반응형

'Study > AI' 카테고리의 다른 글

[Math] 벡터와 행렬  (0) 2023.03.12
[AI] 넘파이와 판다스  (1) 2023.03.12
[Python] 예외 처리와 파일 및 로그  (0) 2023.03.12
[Python] 객체 지향, 모듈 및 패키지  (0) 2023.03.12
[Python] 파이썬 개요와 환경설정  (0) 2023.03.12