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

Python

  1. Python에서 첫 번째 요소가 같은 튜플을 하나로 합치는 방법

    튜플들의 목록에서 첫 번째 요소가 서로 같은 인접 튜플들을 하나로 합쳐야 하는 경우가 있습니다. 이럴 때 간단한 for 루프와 if 조건문을 사용하면 손쉽게 처리할 수 있으며, 요소를 하나의 리스트에 누적할 때는 extend 메서드를 활용하면 됩니다.아래 예제를 통해 실제 구현 방법과 실행 결과를 확인해 보겠습니다.예제 코드my_list = [(43, 15), (66, 98), (64, 80), (14, 9), (47, 17)] print(The list is : ) print(my_list) my_result = [] for

  2. Python에서 튜플 리스트에서 특정 자릿수 숫자 추출하는 방법

    튜플로 이루어진 리스트에서 특정 자릿수를 가진 요소만 추출해야 하는 경우가 종종 있습니다. 이럴 때 리스트 컴프리헨션(List Comprehension)을 활용하면 간결하고 효율적으로 처리할 수 있습니다.아래는 그 구현 예시입니다.예제 코드my_list = [(67, 2), (34, 65), (212, 23), (17, 67), (18, )] print(The list is : ) print(my_list) N = 2 print(The value of N is ) print(N) my_result = [sub for sub in

  3. Python으로 두 개의 튜플 간 모든 쌍 조합 구하는 방법

    두 개의 튜플 사이에서 가능한 모든 쌍 조합(pair combination)을 구해야 할 때는 리스트 컴프리헨션(list comprehension)과 함께 itertools 모듈의 product() 함수를 활용하면 간단하게 해결할 수 있습니다.product() 함수는 여러 집합의 데카르트 곱(Cartesian product)을 계산해 주는 도구로, 반복 가능한 객체들의 모든 조합을 순서대로 생성합니다.아래는 실제 구현 예시입니다.예제 코드from itertools import productN = 2print(N의 값이 초기화되었습니

  4. Python에서 특정 길이 K의 튜플 제거하는 방법

    파이썬에서 리스트에 담긴 튜플 중 특정 길이 K를 가진 튜플만 골라내어 제거해야 하는 경우가 종종 있습니다. 이럴 때 가장 간결하고 파이썬다운 방법은 바로 리스트 컴프리헨션(list comprehension)을 활용하는 것입니다. 리스트 컴프리헨션은 반복문과 조건문을 한 줄로 압축할 수 있어, 코드가 짧아지고 가독성도 높아집니다. 아래 예제를 통해 실제 동작 방식을 살펴보겠습니다. 예제 코드 my_list = [(32, 51), (22, 13), (94, 65, 77), (70, ), (80, 61, 13, 17)] print(

  5. 외부 리스트 순서에 따라 튜플 리스트를 정렬하는 Python 프로그램

    Python에서 튜플로 이루어진 리스트를 외부에서 정의한 리스트의 순서에 맞춰 정렬해야 하는 경우가 있습니다. 예를 들어, 데이터베이스 조회 결과나 API 응답 데이터가 특정 기준 순서와 일치하도록 재배열해야 할 때 유용합니다.이럴 때 리스트 컴프리헨션(list comprehension)과 dict() 함수를 함께 사용하면 간단하게 해결할 수 있습니다.예제 코드my_list = [(Mark, 34), (Will, 91), (Rob, 23)] print(튜플 리스트 : ) print(my_list) ordered_list = [W

  6. Python에서 리스트 속 중첩 튜플을 하나의 튜플로 병합하는 방법

    리스트 안에 중첩된 튜플 구조를 하나의 튜플로 평탄화(flatten)해야 하는 경우가 있습니다. 이럴 때 튜플을 입력값으로 받는 재귀 함수를 정의하면 간단하게 해결할 수 있습니다.함수는 전달받은 튜플을 순회하면서, 더 이상 분해할 수 없는 요소에 도달할 때까지 자기 자신을 반복적으로 호출하여 최종 결과를 만들어냅니다.아래는 실제 동작 예시입니다.예제 코드def flatten_tuple(my_tuple): if isinstance(my_tuple, tuple) and len(my_tuple) == 2 and not isins

  7. Python에서 중첩 튜플을 사용자 정의 키를 가진 딕셔너리로 변환하는 방법

    중첩 튜플(nested tuple)을 사용자가 원하는 키 구조를 가진 딕셔너리 형태로 변환해야 할 때, 리스트 컴프리헨션(list comprehension)을 활용하면 매우 간결하게 처리할 수 있습니다.아래 예제를 통해 실제 동작 과정을 살펴보겠습니다.예제my_tuple = ((6, Will, 13), (2, Mark, 15), (9, Rob, 12)) print(튜플은 다음과 같습니다 : ) print(my_tuple) my_result = [{key: sub[0], value: sub[1], id: sub[2]} fo

  8. 반복문 없이 1부터 N까지 숫자를 출력하는 파이썬 프로그램 – 재귀 함수 활용법

    주어진 범위 안의 숫자들을 for나 while 같은 반복문 없이 출력해야 하는 상황이라면, 재귀(recursion)를 활용한 함수를 정의하면 간단하게 해결할 수 있습니다. 이 방식은 상위 범위 값부터 시작해 숫자를 하나 출력할 때마다 값을 1씩 감소시키며 자기 자신을 다시 호출하는 원리로 동작합니다.예제 코드def print_nums(upper_num): if(upper_num>0): print_nums(upper_num-1) print(upper_num) upper_lim = 6 prin

  9. 파이썬(Python)으로 오일러 수 e 계산하기: 팩토리얼 공식 활용 가이드

    파이썬으로 오일러 수(e) 계산하기수학에서 가장 중요한 상수 중 하나인 오일러 수 e는 자연로그의 밑으로, 약 2.71828의 값을 가집니다. 파이썬(Python)을 활용하면 다음 공식을 통해 오일러 수의 근사값을 손쉽게 계산할 수 있습니다.e = 1 + 1/1! + 1/2! + … + 1/n!구현 과정은 크게 두 단계로 나뉩니다. 첫 번째 단계에서는 팩토리얼을 계산하는 메서드를 정의하고, 두 번째 단계에서는 각 팩토리얼 값의 역수들을 모두 더하는 메서드를 정의합니다.아래에서 실제 동작 과정을 살펴보겠습니다.예제 코드def fact

  10. Python으로 주어진 범위 내 모든 피타고라스 삼중항 구하기

    피타고라스 삼중항(Pythagorean triplets)은 a² + b² = c² 관계를 만족하는 세 개의 양의 정수 조합을 말합니다. 주어진 범위 내에서 이러한 삼중항을 모두 찾아야 할 때, 삼중항 값을 계산해 주는 메서드를 정의하여 해결할 수 있습니다.이 프로그램은 유클리드 공식(a = m² − n², b = 2mn, c = m² + n²)을 활용하여 효율적으로 삼중항을 생성합니다. 아래는 그 구현 예시입니다.예제 코드def pythagorean_triplets(limits) :   c, m = 0, 2&nbs

  11. 파이썬으로 리스트에서 특정 숫자의 등장 횟수 세는 방법

    리스트 안에 특정 숫자가 몇 번 등장하는지(빈도) 확인해야 할 때가 종종 있습니다. 이럴 때는 리스트와 찾으려는 숫자를 매개변수로 받는 함수를 정의하고, 리스트를 한 요소씩 순회하면서 해당 숫자를 만날 때마다 카운터를 1씩 증가시키는 방식으로 손쉽게 해결할 수 있습니다.아래에서 실제 동작 과정을 살펴보겠습니다.예제 코드def count_num(my_list, x_val): my_counter = 0 for elem in my_list: if (elem == x_val): my_cou

  12. 파이썬에서 숫자의 가장 오른쪽 설정된 비트를 지우는 방법

    이전에 설정된(set) 숫자의 가장 오른쪽 비트를 지워야 할 때는 &(비트 AND) 연산자를 활용할 수 있습니다.핵심 원리는 간단합니다. 어떤 수에서 1을 빼면 가장 오른쪽에 설정된 비트가 0으로 바뀌고, 그보다 낮은 자리의 비트들은 모두 1로 바뀝니다. 따라서 원래 수와 (원래 수 − 1)을 AND 연산하면 가장 오른쪽 설정된 비트만 깔끔하게 제거할 수 있습니다.예제def clear_right_bit(my_val): return my_val & (my_val-1) n_val = 6 print(n의 값 :) p

  13. 파이썬 재귀를 활용한 그레이 코드(Gray Code) 생성 방법

    그레이 코드(Gray Code)는 인접한 두 코드 값이 오직 한 비트만 다른 특수한 이진수 체계입니다. 이번 글에서는 파이썬의 재귀적 구조와 반복문을 활용하여 원하는 비트 수만큼의 그레이 코드를 생성하는 방법을 살펴보겠습니다.핵심 아이디어는 다음과 같습니다. 먼저 빈 리스트를 만들고 기본 값인 0과 1을 추가합니다. 이후 여러 개의 for 반복문을 사용해 기존 코드들을 뒤집어 복사하고, 앞부분에는 0을, 뒷부분에는 1을 붙여가며 코드 목록을 점진적으로 확장합니다.예제 코드import math as mt def generate_gr

  14. 파이썬으로 그레이 코드(Gray Code)를 이진수(Binary)로 변환하는 방법

    그레이 코드(Gray Code)는 인접한 코드 간에 1비트만 차이가 나도록 구성된 이진 코드 시스템으로, 회전 인코더나 오류 보정 등에서 널리 사용됩니다. 이 글에서는 파이썬을 이용해 그레이 코드 문자열을 일반 이진수 문자열로 변환하는 알고리즘을 구현하고 설명합니다. 구현 예제 핵심 로직은 가장 상위 비트(MSB)는 그대로 유지하고, 이후 비트부터는 이전 이진수 비트와 현재 그레이 코드 비트를 XOR(배타적 논리합) 연산하여 구하는 것입니다. 아래 코드는 문자열 연산으로 이를 구현한 예시입니다. 0 return 1 if

  15. 파이썬(Python)으로 이진수를 그레이 코드로 변환하는 프로그램

    이진수(binary)를 그레이 코드(Gray code)로 변환해야 할 때는 XOR 연산을 수행하는 함수를 정의하면 간단하게 처리할 수 있습니다. 그레이 코드는 인접한 두 코드 값 사이에 한 비트만 차이가 나는 특성이 있어, 디지털 회로나 통신 시스템에서 오류를 줄이는 데 널리 활용됩니다.예제 코드def binary_to_gray_op(n): n = int(n, 2) n ^= (n >> 1) return bin(n)[2:] gray_val = input('Enter the binary num

  16. 사용자가 입력한 행 수만큼 파스칼의 삼각형을 출력하는 Python 프로그램

    사용자가 직접 입력한 행 수만큼 파스칼의 삼각형(Pascals Triangle)을 출력해야 할 때, 간단한 for 루프와 팩토리얼(factorial) 계산을 활용하면 손쉽게 구현할 수 있습니다.파스칼의 삼각형은 각 행의 값이 조합(combination) 공식으로 계산되는 구조입니다. 즉, i번째 행의 j번째 값은 다음과 같이 표현됩니다.C(i, j) = i! / (j! × (i−j)!)아래는 이 원리를 적용한 전체 예제 코드입니다.예제from math import factorial input = int(input(Enter the

  17. 파이썬(Python)으로 숫자가 완전수(Perfect Number)인지 확인하는 프로그램

    어떤 수가 자기 자신을 제외한 모든 양의 약수의 합과 정확히 같을 때, 그 수를 완전수(Perfect Number)라고 부릅니다. 예를 들어 6은 1, 2, 3을 약수로 가지며, 1 + 2 + 3 = 6이므로 대표적인 완전수입니다.파이썬에서 특정 숫자가 완전수인지 확인해야 할 때는 간단한 for 반복문 하나만으로도 손쉽게 구현할 수 있습니다. 아래에서 그 구현 방법을 살펴보겠습니다.예제 코드n = 6 my_sum = 0 for i in range(1, n): if(n % i == 0): my_sum = my_s

  18. 파이썬으로 스트롱 넘버(강한 수) 판별하기 – 자릿수 팩토리얼 합으로 확인하는 방법

    스트롱 넘버(Strong Number, 강한 수)란 각 자릿수의 팩토리얼 값을 모두 더했을 때 그 합이 원래의 수 n과 같아지는 수를 말합니다. 팩토리얼은 어떤 수부터 1까지의 모든 정수를 곱한 값을 의미하며, 느낌표(!) 기호로 표현합니다. 예를 들어 5! = 5 × 4 × 3 × 2 × 1 = 120입니다. 특정 숫자가 스트롱 넘버인지 확인하려면 나머지 연산자(%)와 while 반복문을 활용하면 됩니다. 숫자를 한 자릿수씩 분리하고, 각 자릿수의 팩토리얼을 구해 누적한 뒤 원래 값과 비교하는 방식입니다. 대표적인 스트롱 넘버의

  19. 다항식의 계수가 리스트에 저장되어 있을 때 이를 계산하는 파이썬 프로그램

    다항식의 각 계수가 리스트에 저장되어 있을 때 해당 다항식 방정식의 값을 계산해야 한다면, 간단한 for 반복문을 활용하면 쉽게 해결할 수 있습니다.아래는 그 구현 과정을 보여주는 예제입니다 −예제my_polynomial = [2, 5, 3, 0] num = 2 poly_len = len(my_polynomial) my_result = 0 for i in range(poly_len): my_sum = my_polynomial[i] for j in range(poly_len - i - 1): my_sum

  20. 파이썬으로 두 숫자가 우호수(친화수)인지 확인하는 방법

    우호수(Amicable Numbers)는 서로 다른 두 수가 특별한 관계를 이루는 숫자 쌍입니다. 즉, 각 숫자의 진약수(proper divisor)의 합이 상대방 숫자와 정확히 일치하는 경우를 말합니다. 대표적인 예로 220과 284가 있으며, 220의 진약수 합은 284가 되고, 284의 진약수 합은 220이 됩니다.두 숫자가 우호수인지 확인하려면 먼저 주어진 숫자를 반복(iterate)하면서 나머지 연산자(modulus operator)를 활용해 약수의 합을 구하는 메서드를 정의합니다. 그다음, 앞서 정의한 함수를 호출하여 두

Total 8989 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:268/450  20-컴퓨터/Page Goto:1 262 263 264 265 266 267 268 269 270 271 272 273 274