Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python

  1. Python에서 튜플(Tuple)을 정수로 변환하는 방법

    Python에서 튜플의 각 요소를 하나의 정수로 합쳐야 하는 경우가 있습니다. 예를 들어 (23, 45, 12)라는 튜플을 234512라는 정수로 변환하는 상황이 그렇습니다. 이럴 때 람다(lambda) 함수와 functools 모듈의 reduce 함수를 함께 사용하면 간결하게 해결할 수 있습니다.람다 함수란?람다 함수는 이름 없이 정의되는 익명 함수(anonymous function)입니다. 일반적으로 Python에서는 def 키워드로 함수를 정의하지만, 람다 함수는 lambda 키워드를 사용해 한 줄로 정의합니다. 여러 개의 인

  2. Python에서 특정 값으로 튜플 초기화하는 방법

    Python에서 튜플(tuple)을 특정 값으로 초기화해야 할 때는 tuple() 메서드와 * 연산자를 함께 활용하면 간단하게 해결할 수 있습니다.tuple() 메서드는 인자로 전달된 이터러블(iterable) 객체를 튜플 타입으로 변환해 줍니다. 반면 * 연산자는 일반적으로 두 값의 곱을 계산할 때 사용되지만, 하나의 값을 여러 번 반복하여 리스트를 생성하는 용도로도 활용할 수 있습니다.튜플은 한 번 생성되면 내부 요소를 변경할 수 없는 불변(immutable) 자료형이기 때문에, 먼저 리스트로 값을 구성한 뒤 마지막에 튜플로 변

  3. Python 튜플 리스트에서 중복 튜플 제거하기

    튜플 리스트에서 중복된 튜플을 제거해야 할 때는 반복문과 함께 any 메서드와 enumerate 메서드를 활용할 수 있습니다.핵심 개념 정리any() 메서드: 이터러블(iterable) 내의 값 중 하나라도 True가 있으면 True를 반환하고, 모두 False이면 False를 반환합니다.enumerate() 메서드: 주어진 이터러블에 인덱스 카운터를 추가하여 (인덱스, 요소) 형태로 반환합니다.리스트(List): 정수, 실수, 문자열 등 서로 다른 자료형의 값을 함께 저장할 수 있는 자료구조입니다.튜플의 리스트: 하나의 리스트 안

  4. 파이썬으로 계산기 연산을 수행하는 클래스 만들기

    계산기 연산을 수행하는 클래스를 만들어야 할 때는 객체 지향 프로그래밍 방식을 활용하는 것이 가장 효과적입니다. 이 방식에서는 하나의 클래스를 정의하고 그 안에 속성(데이터)과 메서드(기능)를 함께 담아 관리합니다. 덧셈, 뺄셈, 곱셈, 나눗셈 같은 연산은 각각의 메서드로 구현하며, 클래스의 인스턴스를 생성한 뒤 해당 메서드들을 호출하여 계산기를 실제로 동작시킬 수 있습니다.아래 예제를 통해 구체적인 구현 방법을 살펴보겠습니다.예제 코드class calculator_implementation():    def __

  5. 파이썬으로 사용자 문자열을 입력받고 출력하는 클래스 만들기

    사용자로부터 문자열을 입력받는 메서드와 그 문자열을 화면에 출력하는 메서드를 가진 클래스를 만들어야 할 때, 객체 지향 프로그래밍(OOP) 방식을 활용하면 효과적입니다. 이 방식에서는 먼저 클래스를 정의하고, 그 안에 필요한 속성(멤버 변수)을 선언합니다. 그다음 특정 작업을 수행하는 함수들을 클래스 내부에 메서드 형태로 정의한 뒤, 클래스의 인스턴스(객체)를 생성하여 해당 메서드들을 호출해 원하는 동작을 수행하게 됩니다.아래 예제를 통해 실제 구현 과정을 살펴보겠습니다.예제 코드class print_it():   &nbs

  6. 파이썬 클래스를 활용해 정수 리스트의 모든 부분 집합을 구하는 방법

    리스트에 담긴 정수들로 만들 수 있는 모든 부분 집합(subset)을 구할 때는 객체 지향 방식으로 클래스를 정의하는 것이 효과적입니다. 클래스 안에 필요한 속성과 메서드를 정의하고, 인스턴스를 생성해 기능을 호출하면 깔끔하게 문제를 해결할 수 있습니다.아래는 이를 구현한 예제입니다.예제 코드class get_subset:   def sort_list(self, my_list):      return self.subset_find([], sorted(m

  7. 파이썬으로 리스트를 분할하고 앞부분을 뒤에 추가하는 프로그램

    리스트를 특정 위치에서 분할한 후, 잘라낸 앞부분을 리스트의 끝에 다시 붙여야 하는 경우가 종종 있습니다. 이럴 때는 리스트를 순회하면서 슬라이싱(slicing) 기법을 활용하면 간단하게 해결할 수 있습니다.파이썬의 리스트는 정수, 실수, 문자열 등 서로 다른 자료형의 값을 하나의 배열에 함께 저장할 수 있는 유연한 자료구조입니다.아래 예제를 통해 실제 동작 과정을 살펴보겠습니다.예제 코드def split_list(my_list, n_val, k_val):    for i in range(0, k_val): &nb

  8. Python으로 이항 트리(Binomial Tree) 구현하기 – 객체 지향 접근법

    Python에서 이항 트리(binomial tree)를 구현해야 하는 경우, 객체 지향 프로그래밍 방식을 활용하는 것이 가장 효과적입니다. 클래스를 정의하고 그 안에 속성(attribute)과 메서드(method)를 선언한 뒤, 클래스의 인스턴스를 생성하여 실제 연산을 수행하는 방식입니다.이 글에서는 이항 트리를 생성하고, 차수(order)가 같은 두 트리를 결합하는 기능을 갖춘 메뉴 기반 프로그램을 소개합니다.이항 트리란?이항 트리는 이진 힙(binary heap)과 함께 사용되는 자료구조로, 다음과 같은 특징을 가집니다.차수가

  9. 파이썬으로 특정 범위 내에서 홀수이면서 회문인 숫자 모두 찾기

    주어진 범위 사이에 있는 숫자 중 홀수이면서 동시에 회문(palindrome)인 모든 숫자를 찾아야 하는 경우가 있습니다. 이때 재귀 함수를 사용하지 않고 해결하려면 리스트 컴프리헨션(list comprehension)과 % 연산자를 활용하면 간단하게 구현할 수 있습니다.회문이란 왼쪽에서 오른쪽으로 읽어도, 오른쪽에서 왼쪽으로 읽어도 같은 문자열을 의미합니다. 예를 들어 121, 13331처럼 앞뒤가 똑같은 숫자가 여기에 해당합니다.예제 코드my_list = [] lower_limit = 5 upper_limit = 189 prin

  10. 재귀 없이 숫자 자릿수의 합을 구하는 파이썬 프로그램

    재귀 호출 없이 숫자의 각 자릿수 합을 구해야 하는 경우, % 연산자(나머지), + 연산자(덧셈), // 연산자(정수 나눗셈)를 함께 활용하면 손쉽게 해결할 수 있습니다.핵심 아이디어는 간단합니다. 어떤 수를 10으로 나눈 나머지는 항상 그 수의 마지막 자릿수이고, 10으로 정수 나눗셈을 하면 마지막 자릿수가 제거된다는 점을 이용하는 것입니다. 아래 예제를 통해 자세히 살펴보겠습니다.예제 코드def sum_of_digits(my_num):     sum_val = 0   &nbs

  11. 주어진 숫자가 디사리움(Disarium) 수인지 확인하는 파이썬 프로그램

    주어진 숫자가 디사리움(Disarium) 수인지 확인하려면, 각 자릿수를 해당 자리의 위치만큼 거듭제곱한 값들의 합을 계산해야 합니다. 이를 위해서는 먼저 숫자가 몇 자릿수인지 구하는 과정이 필요합니다. 디사리움 수란 각 자릿수를 그 자리 위치만큼 거듭제곱한 값의 합이 원래 숫자 자신과 같은 수를 의미합니다. 예를 들어 135는 11 + 32 + 53 = 1 + 9 + 125 = 135이므로 디사리움 수에 해당합니다. 아래는 이를 확인하는 파이썬 코드 예시입니다. 예제 코드 def length_calculation(num_val)

  12. 파이썬으로 1부터 100 사이의 모든 Disarium 수를 찾아 출력하는 방법

    1부터 100 사이의 모든 Disarium 수(디사리움 수)를 출력해야 하는 경우, 1부터 100까지 간단한 반복문을 실행하면서 각 숫자의 자릿수 길이를 계산하고, 각 자릿수에 해당 자리의 거듭제곱을 곱한 값을 더하면 됩니다.계산된 합이 원래 숫자와 같다면 그 숫자는 Disarium 수로 판별됩니다.Disarium 수란?Disarium 수는 각 자릿수를 자신의 자리 위치만큼 거듭제곱한 값들의 합이 원래 숫자와 동일한 수를 의미합니다. 예를 들어 89는 8¹ + 9² = 8 + 81 = 89가 되므로 Disarium 수입니다.아래는

  13. 파이썬으로 주어진 숫자가 해피 넘버(Happy Number)인지 확인하는 프로그램

    주어진 숫자가 해피 넘버(Happy Number)인지 확인해야 할 때는 %(나머지), //(몫), +(덧셈) 연산자를 활용할 수 있습니다.해피 넘버란 무엇인가?해피 넘버는 숫자의 각 자릿수를 제곱한 값을 모두 더한 수로 반복해서 대체했을 때, 최종적으로 1에 도달하는 숫자를 말합니다. 예를 들어 19는 1² + 9² = 82, 다시 8² + 2² = 68처럼 계산이 반복되어 언젠가 1이 되므로 해피 넘버입니다. 반면 이 과정이 1에 도달하지 못하고 특정 수들 사이에서 무한히 순환하는 숫자는 해피 넘버가 아닙니다.예제 코드def ch

  14. 파이썬으로 1부터 100 사이의 모든 해피 넘버(Happy Number) 출력하기

    1부터 100 사이의 모든 해피 넘버(Happy Number)를 출력해야 할 때는 간단한 반복문과 %(나머지 연산자), +(덧셈 연산자), //(정수 나눗셈 연산자) 같은 기본 연산을 활용하면 됩니다.해피 넘버란?해피 넘버는 숫자의 각 자릿수를 제곱한 값들을 모두 더한 숫자로 계속해서 대체했을 때, 최종적으로 1에 도달하게 되는 수를 의미합니다. 만약 이 과정에서 1이 아닌 4에 도달한다면 해당 수는 해피 넘버가 아닙니다(4로 시작하는 순환에 빠지기 때문입니다).주어진 범위 내의 해피 넘버를 출력하려면 간단한 반복문을 사용할 수 있

  15. 파이썬으로 주어진 숫자가 Harshad 수인지 확인하는 프로그램

    주어진 숫자가 Harshad 수(하샤드 수)인지 판별해야 할 때는 간단한 반복문과 % 연산자, + 연산자, // 연산자만 활용하면 됩니다.Harshad 수는 Niven 수라고도 불리며, 어떤 정수를 특정 진법으로 표현했을 때 그 수의 각 자릿수 합으로 나누어 떨어지는 수를 의미합니다. 예를 들어 10진수에서 18은 자릿수의 합이 1+8=9이고, 18÷9=2로 나누어 떨어지므로 Harshad 수입니다. 참고로 1부터 10까지의 모든 자연수와 12, 21 등도 Harshad 수에 해당합니다.아래는 이를 구현한 예제입니다.예제 코드my_

  16. Python으로 구현하는 배열 회전 반전 알고리즘(Reversal Algorithm)

    회전된 배열을 뒤집어야 하는 상황에서는 반전 알고리즘(Reversal Algorithm)이 매우 효율적인 해결 방법이 됩니다. 이 알고리즘은 리스트를 직접 순회하면서 요소의 위치를 서로 교환하는 방식으로 동작하며, 추가 메모리 없이 제자리(in-place)에서 배열을 조작할 수 있다는 장점이 있습니다.핵심 아이디어는 간단합니다. 왼쪽으로 k칸 회전하고 싶다면 다음 세 단계의 반전 연산만 수행하면 됩니다.처음부터 k-1번째까지의 부분 배열을 반전k번째부터 마지막까지의 부분 배열을 반전전체 배열을 한 번 더 반전예제 코드def reve

  17. 재귀 함수를 활용해 숫자가 소수인지 확인하는 파이썬 프로그램

    프로그래밍을 배우다 보면 어떤 숫자가 소수(prime number)인지 아닌지 판별해야 하는 경우가 자주 생깁니다. 이 글에서는 재귀(recursion) 기법을 활용해 숫자의 소수 여부를 확인하는 파이썬 프로그램을 예제와 함께 자세히 살펴봅니다.재귀란 무엇일까요?재귀는 하나의 함수가 자기 자신을 다시 호출하는 방식으로 동작하는 프로그래밍 기법입니다. 큰 문제를 잘게 나누어 각 부분의 결과를 계산한 뒤, 이 결과들을 결합해 최종 답을 도출합니다. 소수 판별처럼 동일한 연산을 반복 수행해야 하는 문제에 특히 적합한 접근 방식입니다.예제

  18. 파이썬 재귀 함수로 두 숫자의 곱 구하기: 단계별 예제

    재귀(recursion) 기법을 활용하면 두 숫자의 곱을 반복문 없이 계산할 수 있습니다. 이 방식은 간단한 조건문과 재귀 호출만으로 구현됩니다.재귀란 큰 문제를 작은 단위로 쪼개어 각 단위의 결과를 계산한 뒤, 이를 결합하여 최종 해답을 얻는 방법입니다. 곱셈의 경우, 덧셈을 반복하는 방식으로 곱을 구할 수 있습니다. 예를 들어 3 × 4는 4를 3번 더한 것과 같습니다.예제 코드아래는 재귀를 사용해 두 숫자의 곱을 계산하는 파이썬 프로그램입니다.def compute_product(val_1, val_2):    

  19. 파이썬 재귀 함수로 문자열이 회문인지 확인하는 방법

    회문(Palindrome)이란?문자열이 회문(palindrome)인지 확인해야 하는 상황에서는 재귀(recursion) 기법과 함께 간단한 인덱싱과 사용자 정의 함수를 활용할 수 있습니다.회문이란 왼쪽에서 오른쪽으로 읽었을 때와 오른쪽에서 왼쪽으로 읽었을 때 각 인덱스에 위치한 문자가 서로 동일한 문자열을 의미합니다. 예를 들어 MalaM, level, racecar 같은 문자열이 대표적인 회문입니다.재귀는 큰 문제를 잘게 나눈 작은 단위의 결과를 계산한 뒤, 이 결과들을 결합하여 전체 문제의 해답을 도출하는 방식입니다. 회문 검사

  20. 파이썬 재귀 함수로 문자열 뒤집기: 예제 코드와 상세 설명

    재귀(Recursion) 기법을 사용하여 문자열을 뒤집어야 하는 경우, 사용자가 직접 정의한 메서드와 재귀 호출을 함께 활용하게 됩니다.재귀는 하나의 큰 문제를 잘게 나눈 작은 단위의 결과를 먼저 계산한 뒤, 이 조각들을 차례로 결합하여 최종적으로 전체 문제의 해답을 만들어 내는 방식으로 동작합니다.재귀로 문자열을 뒤집는 원리문자열 뒤집기의 핵심 아이디어는 간단합니다. 문자열의 첫 번째 문자를 분리해 뒤쪽으로 보내고, 나머지 부분에 대해 같은 작업을 반복하는 것입니다. 문자열이 빈 값이 되면 재귀 호출이 멈추면서 각 단계의 결과가

Total 8989 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:245/450  20-컴퓨터/Page Goto:1 239 240 241 242 243 244 245 246 247 248 249 250 251