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

Python

  1. 라이브러리 함수 없이 문자열 길이를 계산하는 Python 프로그램

    파이썬에서 len() 같은 라이브러리 함수를 사용하지 않고 문자열의 길이를 구해야 하는 경우가 있습니다. 이럴 때는 카운터(counter) 변수를 활용하면 됩니다. 문자열의 각 요소를 하나씩 순회할 때마다 카운터 값을 1씩 증가시키면, 반복이 끝난 후의 카운터 값이 곧 문자열의 길이가 됩니다.아래는 그 구현 예제입니다.예제 코드my_string = Hi Will print(문자열은 다음과 같습니다:) print(my_string) my_counter = 0 for i in my_string: my_counter = my_c

  2. 파이썬으로 무방향 그래프에서 DFS를 활용해 모든 연결 요소(Connected Components) 찾기

    무방향 그래프(Undirected Graph)에서 깊이 우선 탐색(Depth First Search, DFS)을 이용해 모든 연결 요소를 찾아야 하는 경우가 있습니다. 이때는 초기값 설정, DFS 순회 수행, 연결 요소 탐색, 그래프에 노드 추가 등의 기능을 담은 메서드들을 포함하는 클래스를 정의하면 됩니다. 클래스의 인스턴스를 생성한 뒤 해당 메서드들을 호출하여 원하는 연산을 수행할 수 있습니다.아래는 이를 구현한 예시입니다.예제 코드class Graph_struct:    def __init__(self, V)

  3. 내장 함수 없이 두 문자열의 길이를 비교해 더 긴 문자열 출력하기 (Python)

    Python에서 내장 함수(예: len())를 사용하지 않고 두 개의 문자열을 입력받아 더 긴 문자열을 화면에 표시해야 하는 경우가 있습니다. 이럴 때는 카운터 변수를 활용해 각 문자열의 길이를 직접 계산한 뒤, if 조건문으로 두 길이를 비교하는 방법을 사용할 수 있습니다.아래 예제를 통해 구체적인 구현 방법을 살펴보겠습니다.예제 코드string_1= Hi there string_2= Hi how are ya print(The first string is :) print(string_1) print(The second string

  4. Python으로 문자열 내 소문자 개수 세는 방법

    문자열에 포함된 소문자의 개수를 세야 할 때, 파이썬에서는 islower() 메서드와 간단한 for 반복문을 활용하면 손쉽게 해결할 수 있습니다.아래 예제를 통해 실제 구현 방법을 살펴보겠습니다.예제 코드my_string = Hi there how are you print(The string is ) print(my_string) my_counter = 0 for i in my_string: if(i.islower()): my_counter = my_counter + 1 print(The number of l

  5. Python 딕셔너리에서 고유한 값만 추출하는 방법

    Python 딕셔너리에서 고유한 값 추출하기 파이썬에서 딕셔너리에 저장된 여러 리스트 값들 사이에서 중복을 제거하고 고유한(unique) 값만 추출해야 하는 경우가 종종 있습니다. 이럴 때는 sorted 메서드와 컴프리헨션(comprehension) 문법을 활용하면 매우 간결하게 해결할 수 있습니다. 아래는 실제 동작 예시입니다. 예제 코드 my_dict = {hi : [5,3,8, 0], there : [22, 51, 63, 77], how : [7, 0, 22], are : [12, 11, 45], you

  6. Python itemgetter를 활용해 딕셔너리 리스트를 값 기준으로 정렬하는 방법

    파이썬에서 딕셔너리로 이루어진 리스트를 특정 값(키)을 기준으로 정렬해야 하는 경우가 자주 있습니다. 이럴 때 operator 모듈의 itemgetter를 사용하면 간결하고 효율적으로 정렬할 수 있습니다.itemgetter는 sorted() 함수의 key 인자와 함께 사용되며, 하나의 키뿐만 아니라 여러 개의 키를 동시에 지정하거나 내림차순 정렬도 손쉽게 구현할 수 있습니다.예제 코드from operator import itemgetter my_list = [{ "name" : "Will", &

  7. 파이썬 람다 함수로 딕셔너리 리스트를 값 기준으로 정렬하는 방법

    파이썬에서 딕셔너리로 이루어진 리스트를 특정 값(키)을 기준으로 정렬해야 할 때, 람다(lambda) 함수를 sorted() 함수의 key 인자로 활용하면 간단하게 해결할 수 있습니다.아래 예제를 통해 나이(age), 이름(name) 등 다양한 조건으로 정렬하는 방법을 살펴보겠습니다.예제 코드from operator import itemgetter my_list = [{ name : Will, age : 56}, { name : Rob, age : 20 }, { name : Mark , age

  8. Python에서 OrderedDict 맨 앞에 요소 삽입하는 방법

    순서가 있는 딕셔너리(OrderedDict)의 맨 앞에 새로운 요소를 삽입해야 하는 경우, update 메서드와 move_to_end 메서드를 함께 활용하면 간단하게 처리할 수 있습니다.아래 예제를 통해 구체적인 구현 방법을 살펴보겠습니다.예제 코드from collections import OrderedDict my_ordered_dict = OrderedDict([(Will, 1), (James, 2), (Rob, 4)]) print(The dictionary is :) print(my_ordered_dict) my_ordere

  9. Python OrderedDict()로 문자열 내 문자 순서 확인하기

    문자열 안의 문자들이 특정 패턴과 동일한 순서로 등장하는지 확인해야 하는 경우, collections 모듈의 OrderedDict를 활용하면 간단하게 해결할 수 있습니다. OrderedDict는 키가 삽입된 순서를 그대로 유지하는 자료구조이기 때문에 문자열의 문자 순서 검증에 특히 적합합니다. 아래는 실제 구현 예제입니다. 예제 코드 from collections import OrderedDict def check_order(my_input, my_pattern): my_dict = OrderedDict.fromkeys(m

  10. Python 딕셔너리를 키 또는 값 기준으로 정렬하는 방법

    Python에서 딕셔너리(dictionary)를 키(key) 또는 값(value)을 기준으로 정렬해야 하는 경우가 자주 있습니다. 먼저 딕셔너리를 정의하고 키-값 쌍을 삽입한 뒤, sorted() 함수를 사용해 정렬할 수 있습니다. for 반복문으로 정렬된 키-값 쌍을 순회하며 출력하면 됩니다. 아래 예제를 통해 실제 동작 방식을 확인해 보겠습니다. 예제 코드 def my_dict(): my_key_value_pair = {} my_key_value_pair[2] = 56 my_key_value_pair[

  11. Python에서 딕셔너리 키와 값 목록을 정렬하는 방법

    Python에서 딕셔너리(dictionary)의 키(key)와 값(value) 목록을 정렬해야 할 때는 내장 함수인 sorted를 활용하면 간단하게 해결할 수 있습니다.아래 예제를 통해 구체적인 사용 방법을 살펴보겠습니다.예제 코드my_dict = {Hi: [1, 6, 3], there: [2, 9, 6], Mark: [16, 7]} print(The dictionary is : ) print(my_dict) my_result = dict() for key in sorted(my_dict): my_resul

  12. 파이썬에서 여러 입력을 키로 갖는 딕셔너리 만드는 방법

    파이썬에서 특정 키가 여러 입력을 갖는 딕셔너리를 만들어야 할 때는, 빈 딕셔너리를 먼저 생성한 뒤 원하는 키에 해당하는 값을 지정하면 됩니다. 파이썬에서는 튜플과 같은 불변(immutable) 객체를 딕셔너리의 키로 사용할 수 있기 때문에, 여러 값을 하나의 튜플로 묶어 마치 복합 키(composite key)처럼 활용할 수 있다는 점이 핵심입니다. 아래 예제를 통해 실제 동작 과정을 살펴보겠습니다. 예제 my_dict = {} a, b, c = 15, 26, 38 my_dict[a, b, c] = a + b - c a, b,

  13. 파이썬 Counter와 딕셔너리 교차(교집합) 활용 예제

    두 문자열에서 공통으로 사용되는 문자를 비교하거나 카운터와 딕셔너리의 교차(교집합) 연산을 시연해야 할 때, 파이썬의 collections 모듈에 포함된 Counter 클래스를 활용할 수 있습니다.Counter 객체에 &(AND) 연산자를 적용하면 두 객체에 공통으로 존재하는 요소들을 더 낮은 빈도수를 기준으로 묶은 새로운 Counter가 만들어집니다. 이 성질을 이용하면 첫 번째 문자열의 모든 문자가 두 번째 문자열 안에 충분히 들어 있는지, 즉 한 문자열을 다른 문자열의 문자들로 재구성할 수 있는지 간단하게 확인할 수 있

  14. Python에서 딕셔너리·집합·카운터의 요소 빈도가 모두 같은지 확인하는 방법

    Python 프로그래밍에서 문자열이나 리스트에 포함된 각 요소의 빈도(frequency)가 서로 동일한지 확인해야 하는 경우가 있습니다. 이럴 때는 collections 모듈의 Counter 클래스를 활용하면 매우 효율적으로 처리할 수 있습니다.기본적인 접근 방식은 다음과 같습니다. 먼저 입력 데이터를 Counter로 변환하여 각 요소의 등장 횟수를 구합니다. 그다음 빈도 값들을 set(집합)으로 변환해 중복을 제거한 뒤 리스트로 만들고, 이 리스트의 길이를 기준으로 판별합니다. 결과는 콘솔에 출력됩니다.예제 코드from colle

  15. 파이썬 딕셔너리에서 특정 값(Value)에 연결된 키(Key) 찾는 방법

    딕셔너리에서 특정 값(value)에 연결된 키(key)를 찾아야 할 때는 index 메서드를 활용할 수 있습니다. 파이썬 3.7 이상에서는 딕셔너리가 삽입 순서를 유지하므로, 키와 값을 각각 리스트로 변환한 뒤 인덱스를 기준으로 서로 연결 지어 찾는 방식이 안정적으로 동작합니다. 예제 코드 my_dict = {Hi: 100, there: 121, Mark: 189} print(딕셔너리:, my_dict) dict_key = list(my_dict.keys()) print(키 목록:, dict_key) dict_val = li

  16. 파이썬으로 튜플(Tuple) 크기 구하기 – sys.getsizeof() 완벽 가이드

    파이썬에서 튜플(tuple)이 실제로 차지하는 메모리 크기를 확인해야 할 때가 있습니다. 이럴 때는 sys 모듈의 getsizeof() 메서드를 사용하면 객체가 사용하는 메모리를 바이트(byte) 단위로 간편하게 확인할 수 있습니다. 참고로 len() 함수가 튜플에 담긴 요소의 개수를 반환한다면, sys.getsizeof()는 튜플 객체가 메모리에서 차지하는 실제 크기를 반환한다는 점에서 서로 다릅니다. 아래는 문자열·숫자가 섞인 튜플, 문자열만 담은 튜플, 그리고 중첩 튜플까지 세 가지 서로 다른 튜플의 크기를 구하는 예제입니다.

  17. 파이썬(Python)으로 튜플에서 최대·최소 K개 요소 추출하기

    튜플(tuple)에서 최댓값과 최솟값에 해당하는 K개의 요소를 추출해야 하는 경우가 종종 있습니다. 이럴 때는 파이썬의 내장 함수인 sorted()를 사용해 모든 요소를 오름차순으로 정렬한 뒤, 정렬된 결과를 순회하면서 앞쪽 K개(최솟값 그룹)와 뒤쪽 K개(최댓값 그룹)의 요소만 골라내면 됩니다.아래 예제를 통해 구체적인 동작 방식을 살펴보겠습니다.예제 코드my_tuple = (7, 25, 36, 9, 6, 8) print(The tuple is : ) print(my_tuple) K = 2 print(The value of K

  18. Python으로 리스트의 숫자와 세제곱 값을 튜플로 묶어 새 리스트 만들기

    주어진 리스트의 각 숫자와 그 세제곱 값을 하나의 튜플로 묶어 새로운 리스트를 만들어야 하는 경우, 리스트 컴프리헨션(list comprehension)을 활용하면 간결하고 효율적으로 처리할 수 있습니다.아래는 실제 구현 예시입니다.예제 코드my_list = [32, 54, 47, 89] print(The list is ) print(my_list) my_result = [(val, pow(val, 3)) for val in my_list] print(The result is ) print(my_result)실행 결과The lis

  19. 파이썬에서 리스트에 튜플 추가하는 방법 (+ 연산자 활용)

    파이썬에서는 리스트(list)와 튜플(tuple)이라는 두 가지 대표적인 시퀀스 자료형을 다룰 때가 많습니다. 그런데 서로 다른 자료형끼리 데이터를 합쳐야 할 때는 어떻게 해야 할까요? 다행히 파이썬에서는 + 연산자를 사용하면 리스트에 튜플을 손쉽게 추가할 수 있습니다.리스트에 튜플 추가하기아래 예제를 통해 리스트에 튜플을 더하는 방법을 살펴보겠습니다.예제 코드my_list = [3, 6, 9, 45, 66] print(The list is : ) print(my_list) my_tup = (11, 14, 21) print(Th

  20. Python으로 튜플의 K번째 인덱스 요소에 가장 가까운 쌍 찾는 방법

    튜플로 구성된 리스트에서 K번째 인덱스 요소와 가장 가까운 쌍(closest pair)을 찾아야 하는 경우, enumerate 메서드와 abs 메서드를 함께 활용하면 간단하게 해결할 수 있습니다. enumerate는 리스트를 순회하면서 각 요소의 인덱스와 값을 동시에 반환해 주고, abs는 두 값 사이의 절대적인 차이를 계산하는 데 사용됩니다. 이 두 가지를 조합하면 K번째 위치의 값을 기준으로 가장 작은 차이를 가지는 튜플을 효율적으로 찾을 수 있습니다. 예제 코드 my_list = [(5, 6), (66, 76), (21, 35

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