[Python] :: set의 합집합(union, |), 교집합(intersection, &), 차집합(difference, -)
·
[Programming Language]/[Python]
◎ set 이란? 파이썬에서 set은 집합 자료형을 말한다. set은 대괄호([ ])를 사용하는 리스트와 달리 중괄호({ })를 사용한다. 이는 보통 리스트에서 2개 이상 중복되는 원소를 1개만 남기고 사용할 때 사용한다. set은 다음과 같은 특징이 존재한다. 중복된 원소를 가질 수 없다. 순서가 존재하지 않는다. > 예제 코드) 만약 [1, 2, 3, 3, 4]와 같은 리스트나 "Hello"와 같은 문자열이 있다고 가정해보자. 이 두개를 집합으로 만들면 아래와 같은 결과가 반환된다. list1 = [1, 2, 3, 3, 4] str1 = "Hello" print("set(list1) : ", set(list1)) print("set(str1) : ", set(str1)) > 실행 결과) 위와 같이 중..
[Python] :: for 반복문을 사용할 때 아무런 값도 필요하지 않은 경우 - '_(언더바 or 언더스코어)' 기호 사용
·
[Programming Language]/[Python]
◎ '_' 기호 사용 보통 for 반복문을 사용할 때는 리스트나 딕셔너리 등의 원소를 하나씩 사용하는 경우와 특정 횟수만큼 반복 실행하는 경우이다. 리스트나 딕셔너리 등의 원소는 반복에 사용할 주요 정보이기 때문에 '_' 기호를 사용하지 않지만, 특정 횟수만큼 반복 실행하는 경우에는 딱히 필요한 정보가 없을 수도 있으므로 '_' 기호를 사용하곤 한다. 이 기호는 언더바 또는 언더스코어라고 부르고 아무 것도 필요하지 않을 때 사용하는 것이다. 이를 흔히 I don't care라고 말하기도 한다. > 예제 코드) x, _, z = 1, 2, 3 # x = 1, z = 3 print(f"x : {x}, z : {z} \n") x, *_, z = 1, 2, 3, 4, 5 # x = 1, z = 5 print(f..
[Python] :: 리스트(list) 원소 비교 방법(>, <, ==, !=)
·
[Programming Language]/[Python]
◎ 두 리스트가 같은지 비교하는 방법 두 리스트의 원소의 값과 순서가 모두 일치하는지 확인하기 위해서는 ==와 != 연산자를 사용할 수 있다. == 연산자를 사용하게 되면 두 리스트의 원소의 값과 순서가 모두 일치해야지 True가 반환되고 그렇지 않다면 모두 False가 반환된다. != 연산자의 반환값은 == 연산자와 반대이다. list1 = [1, 2, 3, 4, 5] list2 = [1, 2, 3, 4, 5] list3 = [5, 4, 3, 2, 1] print("1. == 연산자") print("list1 == list2 : ", list1 == list2) # 값, 순서 모두 일치하므로 True print("list2 == list3 : ", list2 == list3) # 순서 불일치 하므로 F..
[Python] :: 제곱 함수 pow(), math.pow(), **연산자 // 제곱근 함수 math.sqrt(), "** 0.5"
·
[Programming Language]/[Python]
** 기존에는 Programmers에서 코딩 테스트를 풀면서 하나씩 배우는 내용들을 Today's learning 카테코리에 적었으나 나중에 어떤 언어의 내용인지 구분하기가 쉽지 않을 것 같아서 각 언어별 카테고리에 작성하기로 변경하였다. ** ◎ 파이썬에서 제곱 결과를 얻는 방법 1) pow() 파이썬에서 제곱 결과를 얻는 방법 중 첫 번째로 다룰 방법은 기본적으로 제공되는 pow() 함수이다. 함수의 연산 결과는 정수형으로 반환된다. pow(a, b) : a의 b제곱을 반환 print(pow(10, 2)) print(pow(10, 3)) 2) math.pow() 두 번째로 다룰 방법은 math 라이브러리의 pow() 함수이다. 사용 형태는 기본 pow() 함수와 동일하지만 반환 값이 정수형이 아닌 실..
[23.09.10] :: 학습 노트 - Python[chr(), ord(), prod(), reduce(), rindex(), rfind()]
·
Today's Learning
◎ Programmers 1) chr(), ord() chr() 함수는 아스키 코드(ASCII CODE)에 해당하는 문자를, ord() 함수는 문자에 해당하는 아스키 코드를 반환하는 함수이다. print("1) chr() 함수 예시") print("아스키 코드 65는 문자로 : ", chr(65)) print("아스키 코드 97은 문자로 : ", chr(97)) print() print("2) ord() 함수 예시") print("A는 아스키 코드로 :", ord("A")) print("?는 아스키 코드로 :", ord("?")) 2) 리스트의 곱을 구하는 2가지 방법 2-1) prod() 함수 사용 prod() 함수는 math 라이브러리에 포함되어 있다. 따라서 math 라이브러리를 import 해주어..
[23.09.01] :: 학습 노트 - Python[sort(), sorted(), startswith(), endswith()]
·
Today's Learning
◎ Programmers 이번 학습 노트는 오늘 풀어본 문제에 대한 내용이 아닌 8월 마지막 주에 풀었던 문제에 대한 내용이다. 지금까지 문제를 풀면서 익힌 함수들만 잘 숙지하더라도 앞으로의 문제를 푸는데는 어려움이 없을 것 같다. 문제를 풀수록 느끼지만 코테는 역시 알고리즘의 싸움인 것 같다. --- 1-1) sort() sort() 함수는 리스트의 요소를 정렬해주는 함수이다. 이때 기본값은 오름차순이다. 주의할 점으로는 같은 데이터 타입에 대해서만 정렬이 가능하다는 점이다. 이는 당연한게 데이터 타입이 다르면 정렬이라는 개념을 사용할 수 없기 때문이다. list_a = ['z', 'b', 'a', 'c', 'e'] print(f"정렬 전: {list_a}") list_a.sort() print(f"정..
[23.08.15] :: 학습 노트 - Python[items(), count(), index()]
·
Today's Learning
◎ Programmers 오랜만에 프로그래머스 문제를 풀어보았다. Lv 0인데도 불구하고 가끔씩 정말 어려운 문제가 껴있는 것 같다. 분주하게 레벨을 올려 나가야 할 것 같다. 문제를 풀면 풀수록 파이썬은 코테를 위한 언어라는 것이 실감된다. 코테는 누가, 얼마나 더 많은 함수를 알고 있고 잘 사용할 수 있는가의 싸움인 것 같다. --- 1) items() items() 함수는 딕셔너리에서 키와 값을 동시에 추출할 수 있는 함수이다. 단순한 내용이니 아래 예시를 한번 확인해보자. dict_a = { 'a': 1, 'b': 2, 'c': 3 } # 1. 딕셔너리 전체 값 출력 print("case 1)") print(dict_a.items()) print() # 2. for 반복문과 함께 사용 print(..
[Python] :: 클래스 총정리(객체, 인스턴스, 생성자 및 소멸자, isinstance(), 속성, 메소드, 클래스 변수, 정적 메소드와 클래스 메소드, 상속, 추상클래스)
·
[Programming Language]/[Python]
◎ 클래스(Class) 파이썬은 Java와 동일하게 객체 지향 프로그래밍 언어(Object Oriented Programming Language)이다. 사실 대부분의 프로그래밍 언어는 객체 지향 프로그래밍 언어이다. 이는 클래스를 기반으로 한 객체를 생성하여 프로그래밍 하는 것을 뜻한다. 그렇다면 객체란 무엇인가? 1) 객체(Object) 객체란 여러 가지 속성을 가질 수 있는 대상을 의미한다. 예를 들어 '사람'은 '이름', '성별', '나이' 등의 속성을 가질 수 있으므로 하나의 객체라고 볼 수 있는 것이다. 1-1) 인스턴스(Instance) 인스턴스는 클래스를 기반으로 만들어진 객체를 의미한다. 즉, '인스턴스 == 객체' 관계인 것이다. 인스턴스라는 용어는 자주 사용되니 기억해두는 것이 좋다. ..
[23.07.26] :: 학습 노트 - Python[join(), eval(), set(), dict()]
·
Today's Learning
◎ Programmers 1) join() join() 함수는 리스트의 각 문자 요소를 하나의 문자열로 합쳐주는 함수이다. 기본 형태는 다음과 같다. "구분자".join(리스트) 아무런 구분자를 설정하지 않을 경우 각 문자 사이에는 별다른 구분자가 존재하지 않고 구분자를 설정하면 해당 구분자로 각 문자가 구분되게 된다. 아래 예제를 통해 확인해보자. temp = ['a', 'b', 'c', 'd', 'e'] print("".join(temp)) print("---".join(temp)) join() 함수는 코테에서 활용성이 높은 편이니 잘 알아두고 사용하면 좋을 것 같다. 2) eval() eval() 함수는 괄호 안의 내용을 곧이 곧대로 실행해주는 함수이다. 이 함수는 사용하면 편리함이 상승되나 한편으..
[Python] :: 모듈, 패키지, 라이브러리, 프레임워크의 차이 / 모듈 세부 내용
·
[Programming Language]/[Python]
◎ 모듈, 패키지, 라이브러리, 프레임워크 1) 모듈(module) 모듈이란 최하위 개념으로 변수, 함수, 클래스 등이 포함된 하나의 파이썬 파일(****.py)이다. 사용자가 정의한 함수를 모듈로 저장하여 사용하면 유지보수가 간편하고 재사용에 용이하다는 장점이 존재한다. 2) 패키지(package) 패키지란 모듈의 상위 개념으로 여러 개의 단일 모듈이 모여 하나의 패키지를 이루게 된다. 모듈을 패키지라고도 하며 패키지를 모듈이라고도 한다. 그렇게까지 개념을 나눠서 사용하는 것 같진 않다. 3) 라이브러리(library) / 프레임워크(framework) 라이브러리/프레임워크란 여러 모듈이 모인 패키지가 모인 개념이다. 즉, 여러 패키지의 집합이라고 볼 수 있다. 라이브러리/프레임워크를 패키지라고도 하며..