Programing Language

Programing Language/Python

[Python] 이름 없는(익명) 함수 lambda 함수 예제

람다 (lambda) 파이썬에서 람다 함수 구문은 다음과 같다. labmda [parameters] : expression 매개변수 수를 달리하여 람다 함수를 만들 수 있다. 람다 함수를 생성만하면 out 값은 형식으로 나온다. 매개변수의 유무와 개수에 따라 (), (x), (x, y)로 나타난다. 람다 함수를 만들자마자 바로 () 를 사용하여 함수를 실행할 수 있다. 매개변수가 필요하지 않다면 ()만 사용하면 되지만, 매개변수가 필요하다면 괄호 안에 매개변수 값을 넣어야 한다. 또한 변수에 람다 함수를 넣어 실행할 수도 있다. 람다 함수를 저장한 변수의 type은 function이다. 파이썬에서는 람다 함수를 여러 줄에 걸쳐 선언할 수 없다. 한 줄로만 생성할 수 있다. 파이썬에서 람다 함수는 map(..

Programing Language/Python

[Python] time으로 경과 시간 체크하기

외장 함수 파이썬 설치 시 기본적으로 설치된 라이브러리부터 사용 가능한 함수를 외장 함수라 일컫는다. Python library : 파이썬 프로그래밍에 사용 가능한 프로그램들을 모아놓은 것 The Python Standard Library — Python 3.10.0 documentation The Python Standard Library While The Python Language Reference describes the exact syntax and semantics of the Python language, this library reference manual describes the standard library that is distributed with Python. It also des..

Programing Language/Java

[Java] lambda expression 예제

lambda-expression (람다 표현식) Java 8 버전부터 도입된 것으로, 추상 메소드가 하나인 인터페이스 구현 시 간략화된 표현이 가능하다. 익명 클래스 사용 시 더 간략화하여 표현이 가능한 것이다. [Java] Anonymous class Anonymous class 익명 클래스는 말 그대로 이름이 없는 Local inner class이다. 이름이 없으므로 생성자로 만들 수 없고, 클래스의 정의와 동시에 인스턴스를 생성한다. 💻 Java 예제 1 📝 소스 코드 Person p mimah.tistory.com 람다 표현식은 () -> {} 와 같은 형태로 사용한다. 💻 Java 예제 1. 인터페이스를 구현하는 클래스 2. 익명 클래스 3. 람다 표현식 (lambda expression) 총 ..

Programing Language/Python

[Python] 내장함수 덮어쓰기 했을 때 복원하기

내장 함수 (Built-in Functions) 별도의 import 없이 바로 사용 가능한 함수를 내장 함수라 일컫는다. Built-in Functions — Python 3.10.0 documentation Built-in Functions The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order. abs(x) Return the absolute value of a number. The argument may be an integer, a floating poin docs.python.org 파이썬 내장 함..

Programing Language/Python

[Python] argument packing과 argument unpacking

packing과 unpacking의 개념을 알아보기 전에 가변 매개변수에 대해 간단히 이해를 하고 넘어가는 게 좋다. [Python] 가변 매개변수와 키워드 가변 매개변수 [Python] 가변 매개변수 *args와 키워드 가변 매개변수 **kwargs 가변 매개변수 함수 선언 시 가변 매개변수를 사용하면 입력 값이 몇 개가 들어올지 모른다. 임의 개수의 인자를 받는 것이다. 기본적으로 자주 사용하는 print() 함수에서 가변 매개변수를 사용 mimah.tistory.com argument packing & unpacking packing은 인자로 받은 여러 개의 값(객체)을 하나의 객체로 합친다. unpacking은 packing과는 반대로 여러 값을 갖고 있는 한 객체를 풀어, 여러 객체로 나누어준다..

Programing Language/Python

[Python] 가변 매개변수 *args와 키워드 가변 매개변수 **kwargs

가변 매개변수 함수 선언 시 가변 매개변수를 사용하면 입력 값이 몇 개가 들어올지 모른다. 임의 개수의 인자를 받는 것이다. 기본적으로 자주 사용하는 print() 함수에서 가변 매개변수를 사용한다. 함수 호출 시 전달된 복수 개의 매개변수는 하나의 tuple 형태로 묶여서 다루어진다. 가변 매개변수 사용 시 어떤 이름이라도 상관없지만 관례적으로는 args를 많이 사용한다. 가변 매개변수 사용 시 매개변수를 아무것도 넣지 않아도 에러가 발생하지 않는다. 가변 매개변수와 비가변 매개변수는 혼합하여 사용할 수 있지만, 가변 매개변수가 비가면 매개변수보다 뒤에 위치하게 하여 함수를 작성하는 게 좋다. 가변 매개변수 *args를 비 가변 매개변수 operation 앞에 넣어 함수를 선언하였다. 함수가 생성되긴 ..

Programing Language/Python

[Python] 파이썬 함수의 디폴트 매개변수 (Default Arguments)

Default Arguments 파이썬에서는 함수 정의 시 매개변수에 디폴트 값을 지정한 뒤 디폴트 값이 지정된 부분의 매개변수를 생략하고 함수를 호출하면 디폴트 값이 매개변수로 들어가서 함수가 실행된다. myInfo() 함수의 세 번째 매개변수인 gender 매개변수에 'M'을 디폴트 값으로 주었다. 세 번째 매개변수 값을 안 주는 경우 자동으로 gender에는 'M'이 들어간다. 매개변수 값을 넣으면, 넣은 값으로 들어간다. 그래서 myInfo('홍길순', 30, 'F')에서는 gender 값이 'F'로 들어가서 여자입니다를 출력한다. 그러나 함수에서 default argument를 사용할 때, default argument 사용 후 non-default argument는 사용할 수 없다. man이라..

Programing Language/Python

[Python] 리스트 안 for문 - List comprehension

내포된 for문 List Comprehension : list 안에 포함된 for 문 -> list 생성 Dict Comprehension : dict 안에 포함된 for문 -> dict 생성 Set Comprehension : set 안에 포함된 for문 -> set 생성 List Comprehension [i for i in range(10)] 코드를 뒤에서부터 살펴본다. range(10)은 0 ~9까지 숫자 10개를 생성한다. 그리고 생성된 숫자들에서 숫자를 한 개씩 꺼내어 for 뒤의 i에 저장한다. 이후 for 앞의 i로 리스트를 생성한다. 결과 값으로 0 ~ 9까지의 숫자가 담긴 리스트가 생성되었다. comprehension을 사용하지 않고 리스트를 생성하려면 아래와 같은 과정을 거쳐야 한다...

Programing Language/Python

[Python] for문과 iterable

for 파이썬의 for문에서는 else도 사용할 수 있다. for 변수 in iterable 객체: 수행할 문장 eles: for문 빠져나오기 직전에 수행 iterable 객체의 예로는 range(숫자), str, list, set, tuple, dict 등이 있다. for 변수 in range() 보통 파이썬에서 for문을 사용할 때 위와 같은 형태를 많이 본다. 위 같은 형태가 다른 언어에서 for (int i = 0; i < 3; i++) { .. } 형태인 것이다. 이 외에 다른 iterable 객체를 이용해 반복문을 돌릴 수 있다. for 변수 in 문자열 문자열 값에서 문자 하나하나씩 추출된다. for 변수 in list list 내 요소들이 하나씩 추출된다. for 변수 in dict dic..

Programing Language/Python

[Python] Short-Circuit Evaluation (SCE)

SCE 논리 연산자 and, or 표현식과의 관계이다. 참, 거짓 판정에 이어 논리 연산자의 결과는 expresstion 값이 되는데, 이를 short-circuit evaluation(SCE) 혹은 lazy evaluation이라고 한다. or 왼쪽이 참인 경우 왼쪽 값 반환 왼쪽이 거짓인 경우 오른쪽 값 반환 and 왼쪽이 참인 경우 오른쪽 값 반환 왼쪽이 거짓인 경우 왼쪽 값 반환 bool 타입은 당연하게 Ture, False 값들이 나온다. bool 타입이 아닌 다른 타입의 값들을 비교해본다. 파이썬에서 0은 False이므로 0 or 100 결과 값은 or의 오른쪽 값인 100이 반환된다. 'hello'와 'python'은 빈 문자열이 아니므로 True이다. 따라서 'hello' or 'pytho..

Programing Language/Python

[Python] 비교 연산자 chaining (ex. False == True == False)

💭 비교 연산자와 논리 연산자 조건식에 사용 가능한 비교 연산자와 논리 연산자가 있다. 비교 연산자와 논리 연산자의 결과 값은 항상 True 아니면 False이다. 비교 연산자 > >= 참 ^ (xor) : eXclusive OR (XOR, 배타적 논리합) 같으면 거짓, 다르면 참 💭 비교 연산자 chaining 비교 연산자는 임의로 체이닝 된다. 파이썬에는 범위 조건을 표현할 때 a

Programing Language/Python

[Python] 대입과 얕은 복사(Shallow copy), 깊은 복사(Deep copy)

💭 대입 연산 (Assignment) 대입 연산은 객체 복사가 아니다. 따라서 지금부터 설명할 대입과 복사는 연관된 것이 아닌 별개이다. id() 함수는 변수의 주소 값을 반환한다. 대입 연산은 주소 값을 복사하여 대입하는 것이기 때문에 b의 주소도 a의 주소와 같은 것을 확인할 수 있다. 이후 a 값을 변경한 뒤에 b의 값도 변화하는지 확인해본다. a에 1을 더하였다. a와 b는 주소 값이 같았었지만 b 값은 변화되지 않았고, a의 주소가 바뀌었다. 이를 이해하려면 iterable과 immutable의 개념에 대해서 알아야 한다. 지금은 간단히 그림으로만 설명한다. int 타입은 immutable 한 타입이다. 따라서 값 별로 개개인의 메모리 공간을 하나 갖고 있는 것이다. 파이썬에서는 중복된 immu..

밈아
'Programing Language' 카테고리의 글 목록 (4 Page)