Python 기초

조천룡·2023년 5월 4일

python

목록 보기
1/13
post-thumbnail

Python

파이썬 소개

  • 1991년 네델란드 개발자 귀도 반 로섬이 만듦.
  • 처음 소규모 프로젝트에 사용하기 위해서 만듦.
  • 이후 주변 사람들로부터 인기를 얻어 완성도가 높은 파이썬이 탄생함.
  • 구글은 자바와 함께 파이썬을 메인 언어로 사용하고 있음.
  • 'Python'이란 이름은 귀도 반 로섬이 좋아하는 프로그램에서 유래됨

파이썬 특징

  • 무한 정수를 처리할수 있다.
  • 문법 구조가 쉽다.
  • 다양하고 뛰어난 모듈이 많다.

컴파일러   vs   인터프린터

  • 컴파일 언어는 소스 전체를 실행 파일로 만든 후 기계에서 실행 ->  번역과 같음.   (예,c / java)
  • 인터프린터 언어는 필요한 소스 코드만 그떄 그때 실행 ->  동시통역과 같음.  (예, python)

데이터와 변수

데이터와 메모리

변수

  • 데이터가 저장되어 있는 메모리 공간

변수 선언 및 초기화

  • 변수를 정의할떄 반듯이 초기화하도록 합니다.
  • 초기화 하지 않으면 NameErro: name 'num' is not defined

변수 사용 이유

  • 변수는 주로 데이터를 재사용하여 프로그램을 보다 효율적으로 관리하는 목적으로 사용합니다.

변수 작명법

  • 영문 사용
  • 첫 번재는 소문자
  • 가급적 데이터 의미를 파악할 수 있는 명사 사용
  • 카멜 표기법 또는 스네이크 표기법을 사용
  • 예약어 사용 금지
  • 특수문자 사용 금지 (단, 언더바 (_) 는 사용 가능)
  • 공백문자 사용 금지
  • 숫자는 사용해도 되지만 첫 번째 사용 금지

자료형(Data type)

  • 효율적인 메모리 사용을 위해서 데이터를 정수형,실수형,문자(열)형,논리형으로 구분한 것.
  • 정수는 메모리가 허용되는 한 무한 사용 가능
  • 실수는 대략 소수점 이하 17~18번째에서 데이터 손실이 일어남.
  • 숫자도 따옴표로 묶으면 문자(열)로 인식함.
  • 논리형은 True(나머지), False(0)을 구분하기 위한 자료형.

자료형 변환

  • 데이터 타입을 변환하는 것으로 파이썬에서 제공하는 함수를 이용한다.
  • str(문자열로)   int(정수로)   float(실수로)  bool(논리형으로)

빈 문자  vs 공백 문자

  • 빈 문자 : 데이터 없음,   bool('')  ->  False
  • 공백 문자 : 데이터 있음,   bool(' ')  ->  True

데이터  입력  &  출력

  • input() 함수를 이용한 데이터 입력.
  • input() 함수에 입력 가이드 문구 명시.
  • input() 함수를 이용해서 입력한 데이터는 항상 문자(열) 자료형.
  • 형 변환 함수를 이용하여 입력받은 데이터 형을 변환.
  • Print() 함수를 이용한 기본적인 데이터 출력
  • 콤마 (,) 를 이용한 데이터 연속 출력
  • 포맷 문자열을 이용한 데이터 출력
  • 특수문자 : \t  (탭)    \n  (개행)
  • format() 함수를 이용한 데이터 출력
print('User name : {}, User age : {}'.format(userName,userAge))
  • format() 함수의 인덱스를 이용한 출력
print('나의 이름은 {0}이고, 나이는 {1}살 입니다.{0} 이름은 아버님꼐서 지어 주셨습니다.'.format(userName,userAge))
  • 형식 문자를 이용한 데이터 출력
%s -> 문자열
%d -> 정수
%f -> 실수 
print('User name : %s, User age : %d, User avgScore : %.2f' % (userName, userAge, userAvgScore)

연산자

연산자 란?

연산자 종류

  • 산술 연산자 : +   -    *    /    %    //    **
  • 할당 연산자 : =    +=    -=    *=    /=    %=    //=
  • 비교 연산자 : >    >=    <    <=    ==    !=
  • 논리 연산자 : and    or    not

연산 시 주의할 점

  • 문자와 숫자를 이용한 덧셈  X
_TypeError: unsupported operand type(s) for +: 'int' and 'str'_
  • 문자(열)을 이용한 뺼셈  X
TypeError: unsupported operand type(s) for -: 'str' and 'str'
  • 0으로 나누는 경우  X
ZeroDivisionError: division by zero
  • 나눗셈 결과는 항상 float 이다
  • 나머지와 몫을 한번에 구하기 : divmod(num1,num2)
result = divmod(num1,num2)
print('result : {}'.format(result))
print('몫 : {}'.format(result[0]))
print('나머지 : {}'.format(result[1]))
  • 숫자 비교 연산 결과는 bool 이다.
  • 문자 비교 : 아스키 코드를 이용한 비교연산

operator 모듈

  • 모듈이란, 누군가 이미 만들어 놓은 훌륭한 기능
  • 산술 연산자 관련 함수

  • 비교 연산자 관련 함수

  • 논리 연산자 관련 함수

  • math 모듈의 sqrt()와 pow() 함수

  • 제곱근 구하기

조건식

  • 조건식이란, 어떤 조건에 따라 실행이 분기 되는 식.

  • 조건식(삼항연산자)의 두가지 사용법
1. 조건식 결과에 따른 실행만 하는 경우 
print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가능')
2. 조건식 결과를 변수에 할당하는 경우 
result = '가능' if userPoint >= minAblePoint else '불가능'
print('포인트 사용 가능 여부 : {}'.format(result))

조건문

조건문 이란?

  • 특정 조건에 따라 프로그램을 분기한다.

조건문의 종류

  • if 문            :   단일조건
  • if ~ else 문 :   양자택일
  • if ~ elif 문   :   다자택일(다중조건)

조건식   vs   if ~ else문

  • 모든 조건식(삼항연산자)은 if ~ else 문으로 변경할 수 있다.
  • 모든 if ~ else 문을 조건식으로 변경할 수 있는 것은 아니다.

다자택일 조건문

  • if ~ elif문 : 여러 가지 조건식 결과에 따라 실행문이 결정됨.

다자택일 사용시 주의할 점

  • 조건식 순서가 중요하다.

  • 조건 범위를 명시한다.

중첩 조건문

  • 조건문 안에 또 다른 조건문이 있을 수 있다.

반복문

반복문 이란 ?

  • 반복문이란 특정 실행을 반복하는 것.
  • 반복문을 사용하면 프로그래밍이 간결하고 유지 보수가 쉽다.

반복문의 종류

  • 횟수에 의한 반복

  • 조건에 의한 반복

횟수에 의한 반복

  • 정해 놓은 반복 횟수에 따라 실행한다.
  • 횟수에 의한 반복은 for문이 사용된다
  • for ~ in

  • range() 기본 사용 방법
  • 단계가 1인 매개변수 생략 가능
  • 시작이 0인 경우 생략 가능

조건의 의한 반복

  • 조건에 만족하면 반복 실행한다. 그렇지 않으면 반복을 중단한다.
  • 조건에 의한 반복은 while문이 주로 사용된다.
  • while문 사용 방법

for문   vs  while문

  • 횟수에 의한 반복이라면 for문이 while문 보다 적합하다.

  • 조건에 의한 반복이라면 while문이 for문 보다 적합하다.


무한 루프

  • 반복문을 빠져나올 수 없는 경우를 무한 루프라고 한다
  • while문에서 조건식의 결과가 항상 True인 경우

  • 조건식에서 논리형 데이터를 사용해서 무한 반복 실행할 수 있다.

반복문 제어

  • continue 키워드
  • 반복 실행 중 continue를 만나면 실행을 생략하고, 다음 반복 실행문으로 넘어간다.

  • else 키워드
  • else의 실행문은 반복문이 종료된 후 실행된다.

  • break 키워드
  • 반복 실행 중 break를 만나면 반복문을 빠져나온다.

중첩 반복문

  • 반복문안에 또 다른 반복문을 선언한다.

profile
10√2 Data

0개의 댓글