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

Python

  1. Python으로 Microsoft 감정 인식 API를 활용해 이미지 속 감정 분석하기

    사람은 누구나 기쁨, 슬픔, 중립, 놀람, 분노 등 다양한 감정을 표현합니다. 그렇다면 이미지 속 인물의 이러한 감정을 컴퓨터가 자동으로 판별하도록 만들 수 있을까요? 답은 예입니다. Python과 Microsoft의 감정(Emotion) API를 결합하면 이미지에 나타난 감정을 손쉽게 분석할 수 있습니다.Microsoft 감정 API란?Microsoft 감정 API는 Azure Cognitive Services(현재 Azure AI Services)에서 제공하는 클라우드 기반 서비스로, 이미지 속 얼굴을 인식하고 각 얼굴에 대해

  2. 파이썬으로 숫자의 총 비트 수를 계산하는 방법

    숫자의 총 비트 수를 계산하려면 먼저 숫자를 입력받은 뒤 bin() 함수를 사용해 이진수로 변환합니다. 그다음 출력 문자열의 처음 두 문자인 접두사 0b를 제거하고, 마지막으로 이진수 문자열의 길이를 구하면 됩니다. 예제 입력: 200 출력: 8 설명 200의 이진수 표현은 11001000이며, 총 8비트로 구성되어 있습니다. 알고리즘 숫자를 입력받습니다. bin() 함수를 사용하여 해당 숫자를 이진수로 변환합니다. bin() 함수는 결과 문자열 앞에 0b 접두사를 붙이므로, 처음 두 문자를 제거합니다. 이진수 문자열의 길이를

  3. Python에서 여러 리스트를 동시에 반복하는 방법 – zip() 함수 활용 가이드

    Python에서 여러 개의 리스트를 동시에 반복(iteration)해야 할 때는 zip() 함수를 사용하면 됩니다. zip()은 n개의 이터러블(iterable)을 인자로 받아 튜플(tuple)들의 묶음을 반환하며, 각 튜플의 i번째 요소는 각 이터러블의 i번째 요소들로 구성됩니다. 기본 예제 L1 = [1, 2, 3, 4] L2 = [aa, bb, cc, dd] L = zip(L1, L2) print(list(L)) 실행 결과: [(1, aa), (2, bb), (3, cc), (4, dd)] 위 결과에서 볼 수 있듯이,

  4. 파이썬으로 비밀번호 유효성 검사하기: 정규식(re) 모듈 활용법

    사용자로부터 입력받은 비밀번호가 보안 기준에 맞는지 확인하는 것은 웹 서비스와 애플리케이션 개발에서 매우 중요한 작업입니다. 이 글에서는 파이썬의 re(정규 표현식) 모듈과 re.search() 함수를 사용하여 비밀번호가 유효한지 검사하는 프로그램을 만들어 보겠습니다.유효한 비밀번호의 조건이 예제에서는 다음 규칙을 모두 만족해야 유효한 비밀번호로 판단합니다.길이 조건: 최소 8자 이상이어야 합니다.소문자 포함: 알파벳 소문자(a~z)가 반드시 하나 이상 있어야 합니다.대문자 포함: 알파벳 대문자(A~Z)가 반드시 하나 이상 있어야

  5. 파이프(pipe)로 부모·자식 프로세스 간 통신하기 – Python 예제 프로그램

    자식 프로세스를 생성하는 가장 간단한 방법은 fork()를 사용하는 것입니다. fork()는 파이썬 표준 라이브러리인 os 모듈에 포함된 함수로, 호출한 프로세스(부모)의 복제본인 새로운 프로세스(자식)를 만들어 줍니다.이번 글에서는 여기에 pipe()를 함께 사용하여 부모 프로세스와 자식 프로세스 사이에 데이터를 전달하는 방법을 알아보겠습니다. 한 프로세스에서 다른 프로세스로 정보를 넘길 때는 pipe()가 활용됩니다.파이프(pipe)의 특징os.pipe()는 읽기용과 쓰기용 파일 디스크립터 두 개를 반환합니다. 중요한 점은 파이

  6. 주어진 크기의 그룹 단위로 배열을 뒤집는 Python 프로그램

    이 글에서는 사용자가 입력한 배열과 그룹 크기를 활용해 배열을 뒤집는 방법을 알아봅니다. 핵심 아이디어는 배열을 그룹 크기(p)만큼 잘라 각 부분 배열을 역순으로 뒤집는 것입니다.만약 그룹 크기(p)가 배열 크기(n)의 배수가 아니라면, 마지막 그룹은 k개 미만의 남은 요소들로 구성되며 이 요소들도 모두 뒤집습니다. 특별한 경우로, p=1이면 배열은 그대로 유지되고, p≥n이면 배열의 모든 요소를 한 번에 뒤집게 됩니다.알고리즘Revarray(A, n, p) /* A는 정수 배열, n은 배열의 크기이며, 배열의 시작부터 크기 p를

  7. Python으로 세 개의 정렬된 배열에서 공통 요소 찾는 방법

    이 글에서는 먼저 사용자 입력으로 받은 정렬되지 않은 세 개의 배열을 생성한 뒤, 세 배열을 모두 오름차순으로 정렬합니다. 각 배열의 크기는 n1, n2, n3이며, 모든 배열의 시작 인덱스는 0입니다. 즉, i=0, j=0, k=0으로 초기화한 후 세 배열의 요소를 하나씩 순회하면서 세 배열의 현재 값이 서로 같은지 확인합니다. 세 값이 모두 같으면 해당 요소를 출력하고, 그렇지 않으면 비교 결과에 따라 포인터를 앞으로 이동시켜 탐색을 계속합니다. 예제 A = {1, 2, 3, 4, 5} B = {2, 5, 12, 22, 7

  8. 파이썬(Python)으로 리스트가 비어 있는지 확인하는 방법

    빈 리스트가 주어졌을 때, 해당 리스트가 실제로 비어 있는지 아닌지를 판별하는 것이 이 글의 목표입니다. 여기서는 파이썬에서 널리 사용되는 암묵적(Implicit) 방식으로 리스트의 빈 여부를 검사하는 방법을 살펴보겠습니다. 알고리즘 리스트가 비어 있는지 확인하는 절차는 다음과 같이 간단합니다. 1단계: 빈 리스트를 하나 생성합니다. 2단계: 리스트가 비어 있다면 1(True)을 반환하고, 그렇지 않으면 0(False)을 반환합니다. 예제 코드 # 리스트가 비어 있는지 확인하는 파이썬 코드 def checklist(A):

  9. 파이썬으로 배열을 한 칸씩 순환 회전시키는 방법

    사용자로부터 입력받은 배열이 주어졌을 때, 이 배열의 모든 요소를 시계 방향(오른쪽)으로 한 칸씩 순환 회전시키는 것이 목표입니다. 예시 입력: A=[1,2,3,4,5] 출력: [5,1,2,3,4] 위 예시에서 마지막 요소인 5가 배열의 맨 앞으로 이동하고, 나머지 요소들은 각각 한 칸씩 뒤로 밀려난 것을 확인할 수 있습니다. 알고리즘 1단계: 배열의 요소를 입력받는다. 2단계: 배열의 마지막 요소를 변수 x에 저장한다. 3단계: 나머지 모든 요소를 한 칸씩 뒤로 이동시킨다. 4단계: 배열의 첫 번째 요소를 x로 교체한다.

  10. 주어진 범위 내에서 난수를 생성하고 리스트에 저장하는 파이썬 프로그램

    이 프로그램에서는 세 가지 사용자 입력 변수를 사용합니다. 첫 번째는 시작 숫자, 두 번째는 끝 숫자, 마지막은 화면에 표시할 난수의 개수입니다. 파이썬은 random 모듈을 통해 난수 생성 기능을 기본적으로 제공하며, 여기서는 그중 random.randint() 함수를 활용합니다.randint(s, e)는 두 개의 매개변수를 받으며, 시작 값 s부터 끝 값 e까지 양쪽 경계 값을 포함한 범위에서 정수형 난수를 반환합니다.실행 예시n :: 10 s :: 20 e :: 40 [20, 35, 32, 27, 24, 35, 28, 31,

  11. NumPy로 n×n 체커보드 패턴 출력하기: Python 프로그램 구현 가이드

    주어진 값 n을 바탕으로 n × n 크기의 행렬에 체커보드(바둑판) 패턴을 출력하는 것이 이번 예제의 목표입니다.NumPy는 파이썬에서 과학 연산을 위한 기본 패키지로, 초기값이 설정된 배열을 손쉽게 만들 수 있는 다양한 함수를 제공합니다. 특히 모든 요소를 0으로 채운 배열을 생성하는 zeros() 함수를 활용하면 체커보드 패턴을 아주 간단하게 구현할 수 있습니다.알고리즘1단계: 행렬의 차수(n)를 입력받는다.2단계: zeros((n, n), dtype=int)를 사용해 n×n 행렬을 생성한다.3단계: 슬라이싱(slicing) 기

  12. 파이썬으로 정수 배열의 고유 요소(중복 제거) 출력하기

    정수 배열이 주어졌을 때, 배열에는 중복된 요소가 포함될 수 있습니다. 이 글에서는 배열에서 고유한(distinct) 값만 골라서 화면에 출력하는 파이썬 프로그램을 만들어 보겠습니다. 예제 입력:: A = [1, 2, 3, 4, 2, 3, 5, 6] 출력:: [1, 2, 3, 4, 5, 6] 위 예제에서 2와 3은 배열 안에 두 번씩 등장하지만, 결과에는 각각 한 번만 표시됩니다. 알고리즘 배열의 요소를 입력받습니다. 배열의 요소를 하나씩 순서대로 선택합니다. 선택한 요소가 이전에 이미 출력되었는지 확인합니다. 플래그 변수를

  13. 파이썬으로 두 리스트의 차이 구하기 – set() 활용 방법

    이 문제에서는 두 개의 리스트가 주어졌을 때, 두 리스트 간의 차이를 출력하는 것이 목표입니다. 파이썬은 이를 손쉽게 처리할 수 있도록 set() 메서드를 제공하며, 여기서는 바로 이 메서드를 활용합니다. 셋(set)은 중복 요소가 없는 순서 없는(unordered) 컬렉션입니다. 또한 셋 객체는 합집합(union), 교집합(intersection), 차집합(difference), 대칭 차집합(symmetric difference)과 같은 수학적 연산도 지원합니다. 예제 입력:: A = [10, 15, 20, 25, 30, 35,

  14. 파이썬으로 리스트 복제·복사하기: 슬라이싱 연산자 활용법

    이 프로그램은 사용자로부터 입력받은 리스트를 복사(copy)하거나 복제(clone)하는 방법을 다룹니다. 여기서는 슬라이싱(slicing) 기법을 사용하는데, 이 기법은 리스트 자체의 사본을 참조와 함께 생성하는 방식입니다. 이 과정을 흔히 클로닝(cloning)이라고 부릅니다. 알고리즘 리스트를 복제하는 절차는 다음과 같이 간단합니다. 1단계: 배열(리스트)에 들어갈 요소들을 입력받습니다. 2단계: 슬라이싱 연산자(:)를 사용하여 리스트를 복제합니다. 예제 코드 # 파이썬 프로그램 - 슬라이스 연산자를 이용한 리스트 복사/복

  15. 파이썬으로 문장의 각 단어를 거꾸로 뒤집는 프로그램 만들기

    이 글에서는 파이썬의 내장 함수를 활용해 문장에 포함된 각 단어를 역순으로 뒤집는 방법을 소개합니다. 먼저 문장을 단어 목록(list)으로 분리한 뒤, 각 단어를 거꾸로 뒤집어 새로운 리스트를 만듭니다. 이 과정에서 리스트 컴프리헨션(List Comprehension) 기법을 사용하며, 마지막으로 새롭게 만들어진 단어 리스트를 다시 하나의 문장으로 합쳐 완성합니다.실행 예시입력 :: PYTHON PROGRAM 출력 :: NOHTYP MARGORP알고리즘1단계 : 문장을 입력받아 변수 s에 저장한다. 2단계 : 문장을 공백 기준으로

  16. 파이썬으로 두 개의 딕셔너리 병합하기 – update() 메서드 활용법

    이 프로그램에서는 두 개의 딕셔너리가 주어지며, 이를 하나로 합치는(병합하는) 것이 목표입니다. 여기서는 update() 메서드를 사용합니다. update() 메서드는 한 딕셔너리의 키-값 쌍을 다른 딕셔너리에 삽입하여 두 딕셔너리를 병합할 때 활용할 수 있습니다.코드에서는 첫 번째 딕셔너리가 두 번째 딕셔너리에 병합되며, update() 메서드는 None을 반환합니다. None을 반환한다는 것은 새로운 딕셔너리가 생성되지 않고, 기존 딕셔너리가 직접(in-place) 수정된다는 의미입니다.예시 입력:: A = {AAA: 10} B

  17. 주어진 위치에서 'k' 비트를 추출하는 파이썬 프로그램

    이 함수는 숫자의 특정 위치(pos)에서 k개의 비트를 추출한 후 그 값을 반환합니다. 구현 과정에서는 파이썬의 문자열 슬라이싱(slicing) 기법을 활용합니다. 예시 입력 :: number=170 K=5 Pos=2 출력 = 21 숫자 170을 이진수로 변환하면 10101010입니다. 여기서 오른쪽에서 2번째 위치부터 5개의 비트, 즉 10101을 추출하면, 이를 다시 십진수로 변환한 값인 21이 최종 결과가 됩니다. 알고리즘 Extractionbit(no, k, pos) /* 사용자가 입력한 숫자는 변수 no에

  18. 파이썬에서 키를 기준으로 튜플 리스트를 오름차순 정렬하는 프로그램

    개요튜플로 구성된 리스트가 주어졌을 때, 원하는 키(인덱스)를 기준으로 오름차순으로 정렬하는 방법을 알아보겠습니다. 이 작업은 파이썬의 내장 함수인 sorted()를 활용하면 간단하게 해결할 수 있습니다. key 매개변수에 정렬 기준이 될 인덱스 위치의 값을 반환하는 함수를 전달하면, 해당 요소를 기준으로 튜플들이 정렬됩니다.예시입력: A = [(2, 55), (1, 20), (4, 40), (2, 30)] k = 0 출력: [(1, 20), (2, 30), (2, 55), (4, 40)]설명위 예시는 0번째 인덱스, 즉

  19. 파이썬으로 문장이 팬그램(Pangram)인지 확인하는 프로그램 만들기

    주어진 문장이 팬그램(Pangram)인지 아닌지를 판별하는 것이 이번 포스팅의 목표입니다. 팬그램이란 알파벳 a부터 z까지 모든 글자를 최소 한 번 이상 포함하고 있는 문장을 의미합니다. 대표적인 예로 영어 알파벳 26글자가 모두 등장하는 The quick brown fox jumps over the lazy dog 같은 문장이 있습니다. 이 문제는 파이썬의 set() 메서드와 리스트 컴프리헨션(list comprehension) 기법을 활용하면 간단하게 해결할 수 있습니다. 예제 입력: string = abc def ghi jk

  20. 파이썬으로 문자열에 특정 부분 문자열이 포함되어 있는지 확인하는 방법

    이 문제에서는 하나의 문자열이 주어지며, 그 문자열 안에 특정 부분 문자열(substring)이 존재하는지 확인해야 합니다. 파이썬에서는 내장 함수인 find()를 사용하면 간단하게 해결할 수 있습니다. 알고리즘 1단계: 사용자로부터 문자열과 부분 문자열을 입력받아 각각 별도의 변수에 저장합니다. 2단계: 부분 문자열이 문자열 내에 존재하는지 확인합니다. 이때 파이썬의 내장 함수인 find()를 사용합니다. 3단계: 최종 결과를 출력합니다. 4단계: 프로그램을 종료합니다. 예제 코드 def check(str1, sstr):

Total 8989 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:70/450  20-컴퓨터/Page Goto:1 64 65 66 67 68 69 70 71 72 73 74 75 76