| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 유도클래스
- 인프런
- 프로그래머스lv2
- 점프투파이썬
- 코드잇
- 참조자
- C++
- 데이터사이언스
- 깊은복사
- 11382번
- list comprehension
- 얕은복사
- python
- STL
- 다형성
- 제네릭프로그래밍
- OOP
- 멤버함수로구현
- c++코딩테스트합격자되기
- 연산자오버로딩
- 백준
- OpenCV
- 포인터
- 상속
- 주피터
- 람다식
- 동적바인딩
- 기본클래스
- 스택
- 코딩테스트
- Today
- Total
목록python (42)
WjExplor Story
`datetime` 모듈의 `timedelta`는 **두 날짜 또는 시간 사이의 '기간' 또는 '차이'**를 나타내는 객체입니다. 특정 시점(예: 2025년 9월 25일)이 아니라, **시간의 길이**를 표현할 때 사용합니다.`timedelta`의 주요 특징 및 사용법1. **기간 표현:** * `timedelta` 객체는 `days`, `seconds`, `microseconds` 세 가지 내부 값으로 기간을 저장합니다. * 생성 시에는 `weeks`, `hours`, `minutes`, `milliseconds` 등 다양한 단위를 사용할 수 있으며, 이들은 내부적으로 `days`, `seconds`, `microseconds`로 변환됩니다. from datetime impo..
문제 15. 람다와 정렬 다음 리스트를 문자열 길이에 따라 정렬하세요. words = ["apple", "kiwi", "banana", "cherry"]# 내가 작성한 오류 코드words = ["apple", "kiwi", "banana", "cherry"]func_len = [x: len(words).max ]오류 분석 → [x:..]는 람다 함수 문법이 아니다.람다 함수 문법은 lambda 인자 : 표현식(1) 인자가 없는 람다 함수 (anonymous Function): def 키워드로 정의하는 일반 함수와 달리 이름이 없다.greet = lambda "안녕하세요!"print(greet) (2) 인자가 하나인 람다 함수square = lambda x : x**2print(square(6)) # 3..
리스트 두 개를 이용하여 딕셔너리를 만드세요.keys = ["name", "age", "city"]values = ["Tom", 20, "Seoul"]처음에 내가 작성한 코드dict_val= {}for item in keys: # item 은 "name", "age", "city" 와 같은 문자열 dict_val={keys[item],values[item]} # 오류 발생print(dict_val)오류 코드key[item] 에서 TypeError 발생{key[item], values[item]} 는 딕셔너리가 아닌 세트(set) 이다.파이썬스럽고 간결한 방법은 zip() 함수와 dict() 생성자를 함께 사용하는 것이다.1. zip() 함수로 두 리스트의 요소를 짝지어 튜플로 만든다.zip(keys, ..
문제 13. 리스트 중첩다음 2차원 리스트에서 모든 원소를 하나의 리스트로 합치세요matrix = [[1, 2], [3, 4], [5, 6]]Q. 대체 이건 어디부터 시작해야하나? A. 가장 직관적으로 중첩된 for 루프를 사용해보자.1. 중첩된 `for` 루프 사용 (가장 기본적인 방법)이 방법은 2차원의 리스트의 각 하위 리스트(sublist)를 순회하고, 그 하위 리스트의 각 원소를 다시 순회하면서 새로운 리스트에 추가하는 방법이다.즉, 모든 원소를 불러와서 하나씩 저장하는 for문을 만들어보자.matrix = [[1, 2], [3, 4], [5, 6]]matrix_list = [] # 합쳐진 원소들을 담을 빈 리스트를 만듭니다.for sublist in matrix: # 각 하위 리스트(sub..
Q. 함수 매개변수를 `func(*args)` 로 받으면 복잡해지나? A. 'func(*args)' 문법 자체가 복잡한 것은 아니지만, **어떤 상황에서 사용하느냐에 따라 코드를 더 명확하게 만들 수도 있고, 오히려 복잡하게 만들 수 있다**`*args`의 역할 * `*args` 는 함수가 개수가 정해지지 않은 여러 개의 위치 인자(positional arguments)를 받을 때 사용한다. 만약 함수가 정확히 두 개의 매개 변수를 받아야 한다면, def name_func(param1, param2): 처럼 매개변수 이름을 명시하는 것이 훨씬 좋다. *args 을 사용하면 가독성 저하 이유로 복잡해지거나 덜 명확해질 수 있다.* 가독성 저하 : def greet(*args): 라고 하면, args[0]..
# 파이썬 리스트 컴프리헨션 (List Comprehension) ## 1. 리스트 컴프리헨션이란? 파이썬에서 리스트를 생성하는 간결하고 효율적인 방법입니다. 기존의 리스트(또는 다른 반복 가능한 객체)를 기반으로 새로운 리스트를 만들 때 사용합니다. 일반적인 for 루프와 append() 메서드를 사용하는 것보다 코드가 짧고 가독성이 좋으며, 때로는 성능도 더 좋습니다. ## 2. 기본 문법 [표현식 for 항목 in 반복가능객체] ## 3. 조건문이 포함된 문법 [표현식 for 항목 in 반복가능객체 if 조건]4. 예제예제 1: 간단한 변환 (각 숫자를 제곱하기)numbers = [1, 2, 3, 4, 5]# 일반적인 for 루프squared_numbers_for = []for num in numb..
import osdef search(dirname): try: filenames = os.listdir(dirname) for filename in filenames: full_filename = os.path.join(dirname, filename) if os.path.isdir(full_filename): search(full_filename) else: ext = os.path.splitext(full_filename)[-1] if ext == ".py": print(full_filename) ..
피보나치(Fibonacci) 수열의 각 항은 바로 앞의 항 두 개를 더한 것입니다. 1과 2로 시작하는 경우 이 수열은 아래와 같습니다.1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...4백만 이하의 짝수 값을 갖는 모든 피보나치 항을 더하면 얼마가 됩니까?출처 : https://euler.synap.co.kr/problem=2 2번 문제피보나치 수열에서 4백만 이하이면서 짝수인 항의 합euler.synap.co.kr# 피보나치 수열에서 400 이하이면서 짝수인 항의 합def Fibonacci(max_val): prev, cur = 1, 1 total_sum = 0 while cur