Language/Python

    [Python] 변수의 유효 범위(variable scope)

    변수의 유효 범위(variable scope) 파이썬에서는 변수가 선언된 위치에 따라 해당 변수가 영향을 미치는 범위까지 달라지며, 이것을 변수의 유효 범위(variable scope)라고 부른다. 예를 들어, 함수 내부에서 선언된 변수는 해당 함수 내부에서만 사용할 수 있으며, 함수 밖에서는 사용할 수 없다. 파이썬에서 변수는 유효 범위에 따라 다음과 같이 나눌 수 있다. 지역 변수(local variable) 전역 변수(global variable) 지역 변수(local variable) 파이썬에서 지역 변수(local variable)란 함수 내에서 선언된 변수를 의미한다. 이렇게 함수 내에서 선언된 지역 변수는 일반적으로 함수 내에서만 사용할 수 있다. def func(): local_var = ..

    [Python] 함수(function), 매개변수

    인수 전달 시 매개변수 지정 함수에 전달되는 인수는 함수 선언 시 명시한 매개변수의 순서에 따라 언제나 순서대로 저장된다. 즉, 다음 예제와 같이 선언된 함수를 호출할 때 전달받은 첫 번째 인수는 언제나 매개변수 a에 저장되며, 두 번째 인수는 언제나 매개변수 b에 저장되는 것이다. def sub(a, b): print(a - b) 이때 전달받은 인수가 저장되는 매개변수를 직접 지정하고 싶다면, 다음 예제의 7번 라인처럼 함수를 호출할 때 대입 연산자(=)를 사용하여 인수가 저장될 매개변수를 직접 지정하면 된다. def sub(a, b): print(a - b) sub(1, 2) sub(a=1, b=2) sub(b=1, a=2) 실행 결과 -1 -1 1 위 예제의 5번과 6번 라인은 같은 의미이며, 7번..

    [Python] 함수(function)

    함수(function) 다음 그림과 같은 계산기는 계산하려는 숫자를 입력하면 내부에서 특정 연산을 수행하고 그 결과를 화면에 출력해 준다. 이와 비슷한 원리로 특정 값 X를 인수(arguments)로 전달받으면, 반드시 특정 값 Y를 결과로 반환(return)하는 일종의 계산기와 같은 개념을 함수(function)라고 할 수 있다. 프로그래밍에서는 하나의 특정 작업을 수행하기 위해 독립적으로 설계된 프로그램 코드의 집합을 함수(function)라고 부른다. ※ 인수(arguments)란 함수를 호출할 때 함수 내부에서 사용할 수 있도록 전달하는 데이터를 가리킨다. 함수를 사용하는 이유 print(), type(), range() 등과 같은 함수들은 모두 파이썬 내장 함수로 파이썬에서 미리 만들어 제공해 ..

    [Python] 딕셔너리(dictionary) 타입

    딕셔너리(dictionary) 리스트와 튜플 등에서는 정수인 인덱스(index)를 가지고 순차적으로 각 요소에 접근할 수 있었다면, 딕셔너리는 단어 그대로의 '사전'과 같이 별도로 정의한 키(key)를 통해 각 요소에 접근할 수 있도록 만들어진 데이터 타입이다. 사전에서 단어를 가지고 그 단어의 설명을 찾을 수 있듯이, 딕셔너리에서는 키(key)를 가지고 그 키에 해당하는 값(value)을 찾을 수 있는 것이다. ※대부분의 프로그래밍 언어에서는 파이썬의 딕셔너리와 같이 키(key)와 값(value)으로 구성된 데이터 타입을 맵(map)이라고 부른다. ex) JAVA : Map 컬렉션 클래스, C++ : Map 컨테이너 등 딕셔너리 선언하기 딕셔너리는 중괄호({})로 감싸서 선언하며, 딕셔너리의 각 요소(..

    [Python] 세트(set) 타입

    세트(set) 파이썬의 세트는 우리가 수학에서 자주 접한 개념인 집합과 같은 개념으로, 하나의 포대 안에 모든 데이터를 몰아서 저장하는 것으로 쉽게 이해해 볼 수 있다. 따라서 세트 타입에서는 각 요소들의 순서를 매길 수 없으며, 중복된 값 또한 허용하지 않는다. 세트는 중괄호({})로 감싸서 선언하며, 세트 안의 요소(element)들은 쉼표(,)로 구분한다. 또한, 파이썬 내장 함수인 set() 함수를 사용하면 문자열과 같이 순환할 수 있는 객체(iterable object)를 세트로 변환할 수 있다. ※ 파이썬에서 순환할 수 있는 객체(iterable object)란 저장된 요소를 하나씩 차례대로 반환할 수 있는 객체를 의미하며, 대표적으로 리스트, 튜플, 문자열 등이 있다. 문법 세트명 = {요소..

    [Python] 튜플(tuple)타입

    튜플(tuple) 파이썬에서 튜플은 여러 개의 데이터를 하나로 묶는데 사용된다. 이러한 튜플은 리스트(list)와 거의 비슷하지만 다음과 같은 점에서 서로 다르다. 튜플은 그 값을 변경할 수 없다. (immutable type) 튜플은 리스트와 같은 데이터 타입에 비해 그 실행 속도가 빠르다. 따라서 프로그램이 실행되는 동안 그 값을 일정하게 유지해야만 하는 데이터는 튜플로 작성하는 것이 성능이 좋으며, 도중에 그 값이 변경되거나 변경될지도 모르는 데이터는 리스트로 작성하는 것이 좋다. ※ 아무런 요소도 저장하고 있지 않은 튜플은 빈 튜플(empty typle)이라고 부르며, 파이썬에서는 ()로 표현한다. 튜플 선언하기 튜플은 리스트와 마찬가지로 요소(element)를 쉼표(,)로 구분하지만, 대괄호 대..