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

Python

  1. 파이썬 type 객체 완벽 가이드: 모든 클래스는 type의 인스턴스다

    파이썬에서 모든 것은 객체입니다 파이썬에서는 클래스를 포함한 모든 요소가 객체로 취급됩니다. 그리고 모든 클래스는 type이라는 이름의 클래스의 인스턴스입니다. 흥미로운 점은 type 객체 자체도 다시 type 클래스의 인스턴스라는 사실인데, 이러한 구조야말로 파이썬 객체 모델의 근간을 이루는 핵심 개념입니다. 클래스 객체의 __bases__ 속성을 조사하면 해당 클래스의 상속 계층 구조를 확인할 수 있습니다. 또한 type() 메서드는 매개변수로 전달된 객체의 클래스 타입을 반환하며, 호출 방식에 따라 두 가지 역할을 수행합니다.

  2. 파이썬의 널(Null) 객체 완벽 이해하기: None의 모든 것

    다른 프로그래밍 언어에서 흔히 볼 수 있는 null 객체는 파이썬에 존재하지 않습니다. 대신 파이썬에서는 그와 가장 유사한 개념으로 None을 사용합니다. 이 글에서는 파이썬에서 None이 어떻게 동작하는지, 그리고 사용할 때 주의해야 할 점들을 예제와 함께 살펴보겠습니다.None의 타입 확인하기Null과 None의 타입을 각각 확인해 보면, Null이라는 타입은 존재하지 않으며 None 객체는 NoneType 타입이라는 사실을 알 수 있습니다.예제print(type(None)) print(type(Null))출력 결과위 코드를 실

  3. Python으로 XML 다루기: XML 처리 모듈 완벽 가이드

    XML이란 무엇인가?XML은 확장 가능 마크업 언어(Extensible Markup Language)의 약자입니다. 주로 웹 페이지에서 구조화된 데이터를 표현하는 데 사용되며, 시작 태그와 종료 태그로 정의되는 요소(element)로 구성됩니다. 태그(tag)는 < 로 시작하여 > 로 끝나는 마크업 구조를 의미하고, 시작 태그와 종료 태그 사이의 문자들이 해당 요소의 내용(content)이 됩니다. 또한 요소 내부에는 다른 요소를 포함할 수 있으며, 이를 자식 요소(child element)라고 부릅니다.예제 XML 파일

  4. Python으로 구현하는 XML-RPC 서버와 클라이언트 완벽 가이드

    XML-RPC 프로토콜을 활용하면 운영체제나 프로그래밍 언어에 종속되지 않는 크로스 플랫폼·언어 독립형 서버를 손쉽게 만들 수 있습니다. Python에서는 표준 라이브러리에 포함된 SimpleXMLRPCServer 모듈을 사용해 서버 인스턴스를 생성하고, 들어오는 요청을 대기하도록 설정합니다. 이후 서비스에 포함시킬 함수들을 정의하고 등록(register)하면, 서버가 해당 함수들을 호출하는 방법을 알게 됩니다.서버 실행하기다음 예제에서는 SimpleXMLRPCServer 인스턴스를 생성하여 서버를 만들고, 기본 제공 함수와 사용자

  5. Python에서 PhantomJS와 Selenium Webdriver로 브라우저 창 크기 설정하는 방법

    Python에서는 PhantomJS와 Selenium Webdriver를 활용해 브라우저 창 크기를 손쉽게 설정할 수 있습니다. PhantomJS를 사용하려면 먼저 webdriver.PhantomJS 클래스의 드라이버 객체를 생성해야 합니다.이때 phantomjs.exe 드라이버 파일의 경로를 클래스 매개변수로 전달합니다. 그다음 set_window_size 메서드를 사용하고 원하는 너비와 높이 값을 인자로 넘겨주면 창 크기가 지정됩니다.반대로 현재 브라우저 창 크기를 확인하고 싶을 때는 get_window_size 메서드를 사용하

  6. Python Selenium 웹드라이버에서 특정 도메인에 쿠키 설정하는 방법

    개요Selenium 웹드라이버와 Python을 활용하면 특정 도메인에 쿠키를 설정할 수 있습니다. 쿠키는 브라우저가 주고받는 정보를 저장하는 용도로 사용되며, 키-값(key-value) 쌍 형태로 구성됩니다. 쉽게 말해 서버가 브라우저에 전달하는 일종의 메시지라고 할 수 있습니다.쿠키를 추가하려면 add_cookie 메서드를 사용합니다. 이때 쿠키의 키와 값이 매개변수로 전달됩니다. 현재 세션의 모든 쿠키를 조회할 때는 get_cookies 메서드를, 특정 쿠키 하나만 가져올 때는 get_cookie 메서드를 사용합니다.저장된 쿠키

  7. 파이썬으로 풀어보는 생일 역설(Birthday Paradox)

    생일 역설이란?생일 역설(Birthday Paradox)은 확률론 분야에서 가장 유명한 문제 중 하나입니다. 이름처럼 직관과 크게 어긋나는 결과를 보여주기 때문에 역설이라 불리는데, 핵심은 생일이 같은 두 사람이 존재하려면 생각보다 훨씬 적은 인원만 필요하다는 점입니다. 실제로 단 23명만 모여도 생일이 겹칠 확률이 50%를 넘어섭니다.문제 정의생일 파티에 여러 명의 사람들이 모여 있을 때, 그중 생일이 같은 사람이 존재할 확률을 바탕으로 대략 몇 명의 사람이 필요한지 구하는 것이 이 문제의 목표입니다.먼저 간단한 확률 개념부터 짚

  8. 파이썬으로 '좋은 식사' 조합 개수 구하기

    문제 소개좋은 식사(Good Meal)란 정확히 두 가지 서로 다른 음식으로 구성되며, 두 음식의 맛 점수(deliciousness)의 합이 정확히 2의 거듭제곱(1, 2, 4, 8, 16, ...)이 되는 식사를 말합니다. 배열 속에서 어떤 두 음식을 골라도 좋은 식사를 만들 수 있습니다.정수 배열 arr가 주어지고, arr[i]는 i번째 음식의 맛 점수라고 할 때, 이 배열로 만들 수 있는 서로 다른 좋은 식사의 개수를 구하는 것이 목표입니다. 결과가 매우 커질 수 있기 때문에 일반적으로 10⁹ + 7로 나눈 나머지를 반환합니다

  9. 파이썬으로 주어진 숫자 N의 자릿수 개수 구하는 프로그램

    숫자 N이 주어졌을 때, 해당 숫자에 포함된 자릿수가 총 몇 개인지 구하는 것이 이번 문제의 목표입니다. 먼저 예시를 통해 문제를 이해해 보겠습니다.입력 예시 1 −N = 891452출력 −6설명 − 주어진 숫자 891452는 여섯 자리 숫자이므로 결과로 6을 반환합니다.입력 예시 2 −N = 0074515출력 −5설명 − 맨 앞의 0은 숫자의 값에 영향을 주지 않으므로 실제 값은 74515이며, 다섯 자리 숫자이므로 출력은 5가 됩니다.문제 해결 접근 방법이 문제는

  10. 파이썬으로 배열의 과반수 요소(Majority Element) 찾기 — 해시맵 활용법

    정수로 이루어진 배열이 주어졌을 때, 배열에서 가장 많이 등장하는 요소(과반수 요소)를 찾아 반환하는 문제를 살펴보겠습니다. 예를 들면 다음과 같습니다. 입력 예시 1 − N = 8A[ ] = { 1, 2, 4, 3, 3, 1, 1, 5 } 출력 − 1 설명 − 주어진 정수 배열에서 가장 많이 등장하는 숫자는 1입니다. 따라서 출력은 1이 됩니다. 입력 예시 2 − N = 6A[ ] = { 1, 5, 4, 4, 1, 1 } 출력 − 1 설명 − 이 경우에도 가장 많이 등장하는 숫자는 1이므로, 출력으로 1을 반환할 수 있습니다. 문

  11. 파이썬으로 숫자 속 모든 0을 5로 바꾸는 프로그램 작성하기

    정수 N이 주어졌을 때, 숫자 안에 포함된 모든 0을 5로 바꾸는 것이 목표입니다. 단, 맨 앞에 붙은 선행 0은 유효한 자릿수가 아니므로 변경 대상에서 제외하고 그대로 무시합니다. 문제 예시 입력 예제 1 N = 1007 출력: 1557 설명: 주어진 숫자에는 0이 두 개 있으며, 이를 모두 5로 바꾸면 결과는 1557이 됩니다. 입력 예제 2 N = 00105 출력: 155 설명: 맨 앞의 선행 0은 무시되고, 중간에 있는 0만 5로 바뀌어 최종 결과는 155가 됩니다. 문제 해결 접근 방법 숫자의 모든 0을 5로 바꾸려면 각

  12. Python Pandas로 시리즈에서 특수 문자가 2개 이상 포함된 단어의 총 개수 구하기

    문제 개요Pandas 시리즈(Series)에 저장된 각 단어를 검사하여, 특수 문자가 2개 이상 포함된 단어의 총 개수를 구하는 방법을 알아보겠습니다.입력 예시다음과 같은 시리즈가 있다고 가정합니다.0 fruits!!1 *cakes*2 $nuts3 #drinksdtype: object이 시리즈에서 특수 문자가 2개 이상 들어 있는 단어는 fruits!!와 *cakes* 두 개이므로, 기대되는 결과값은 2입니다.이 문제를 해결할 수 있는 여러 가지 방법을 하나씩 살펴보겠습니다.해결 방법 1: 반복문과 조건문 활용

  13. 주어진 판다스 시리즈에서 완전제곱수만 골라내는 파이썬 프로그램

    문제 정의입력 −다음과 같은 판다스(Pandas) 시리즈가 있다고 가정해 보겠습니다.0    14 1    16 2    30 3    49 4    80출력 −이 중 완전제곱수(perfect square)에 해당하는 요소만 필터링한 결과는 다음과 같습니다.0    4 1    16 3    49해결

  14. 파이썬으로 시리즈(Series)에 담을 짝수 인덱스 소문자 알파벳 5개 무작위 생성하기

    이 글에서는 파이썬(Python)을 사용해 소문자 알파벳 중 짝수 인덱스에 위치한 문자들만 추출한 뒤, 그중 5개를 무작위로 선택하여 판다스(pandas) 시리즈(Series)로 만드는 두 가지 방법을 소개합니다.풀이 방법 1: 슬라이싱 활용하기가장 간결한 방법은 파이썬의 슬라이싱(slicing) 기능을 이용하는 것입니다. 단계별로 살펴보면 다음과 같습니다.string.ascii_lowercase로 소문자 알파벳 전체(a~z)를 가져옵니다.슬라이싱 [::2]를 사용하면 인덱스 0, 2, 4,... 즉 짝수 인덱스에 해당하는 문자들만

  15. 파이썬으로 시리즈(Series)에서 유효한 날짜만 필터링하는 프로그램 작성하기

    데이터를 다루다 보면 문자열 형태의 날짜 값 중에서 실제로 유효한 형식을 갖춘 날짜만 골라내야 하는 경우가 종종 있습니다. 이 글에서는 파이썬의 pandas와 re(정규표현식) 모듈을 활용해 시리즈(Series)에서 유효한 날짜만 필터링하는 두 가지 방법을 예제와 함께 살펴보겠습니다. 문제 정의 입력 — 다음과 같은 시리즈가 있다고 가정합니다. 0 2010-03-12 1 2011-3-1 2 2020-10-10 3 11-2-2 출력 — 여기서 유효한 날짜만 추출하면 결과는 다음과 같습니다. 0 2010-0

  16. 파이썬으로 시리즈의 홀수 인덱스를 무작위 대문자 모음으로 교체하는 프로그램 작성하기

    pandas Series에서 홀수 인덱스에 해당하는 값들을 대문자 모음(A, E, I, O, U) 중 하나로 무작위 교체하는 파이썬 프로그램을 만들어 보겠습니다. 이런 기법은 데이터 마스킹이나 테스트용 더미 데이터 생성 등에 유용하게 활용할 수 있습니다. 입력 및 출력 예시 다음과 같은 Series가 있다고 가정해 보겠습니다. 0 1 1 2 2 3 3 4 4 5 여기서 홀수 인덱스(1번, 3번)의 값만 대문자 모음으로 교체하면 결과는 아래와 같습니다. 0 1 1 A 2 3 3 U 4

  17. 파이썬 Pandas로 시리즈(Series)에서 정수 요소만 필터링하는 방법

    데이터 분석 작업을 하다 보면 문자열과 숫자가 뒤섞인 시리즈(Series)에서 정수 값만 골라내야 하는 경우가 자주 발생합니다. 이 글에서는 파이썬의 Pandas 라이브러리를 활용해 혼합형 시리즈에서 정수 요소만 효과적으로 필터링하는 두 가지 방법을 소개합니다.문제 상황다음과 같이 정수와 문자열이 섞여 있는 시리즈가 있다고 가정해 보겠습니다.입력(Input)0    1 1    2 2    python 3    pandas 4    3 5 &n

  18. 파이썬으로 판다스 시리즈에 중복 요소가 있는지 확인하는 방법

    데이터 분석을 하다 보면 판다스(Pandas) 시리즈 안에 중복된 값이 존재하는지 확인해야 하는 경우가 자주 있습니다. 이 글에서는 파이썬으로 시리즈의 중복 여부를 검사하는 두 가지 방법을 소개합니다.예제 데이터먼저 다음과 같은 시리즈가 있다고 가정해 보겠습니다.0 1 1 2 2 3 3 4 4 5위 시리즈에는 중복 요소가 없습니다. 이제 아래의 방법들을 사용해 실제로 검증해 보겠습니다.방법 1: 람다 함수 활용핵심 원리는 간단합니다. 시리즈 전체의 길이와 고유값(unique) 배열의 길이를 비교하는 것입니

  19. 파이썬(Python)으로 시리즈(Series) 안의 정수·실수·문자열 데이터 타입 개수 세는 방법

    데이터 분석을 하다 보면 하나의 시리즈(Series) 안에 정수, 실수, 문자열처럼 서로 다른 데이터 타입이 섞여 있는 경우를 자주 마주하게 됩니다. 이 글에서는 pandas의 filter() 함수와 lambda 표현식을 활용해 각 데이터 타입별 요소 개수를 손쉽게 계산하는 방법을 단계별로 살펴보겠습니다. 문제 정의 입력 − 다음과 같은 시리즈가 있다고 가정합니다. 0    1 1    2 2    python 3    3 4    

  20. 파이썬(Python)으로 판다스 시리즈에서 특정 범위 사이의 요소만 추출해 출력하는 방법

    데이터 분석을 하다 보면 시리즈(Series)에 담긴 값들 중에서 특정 범위에 해당하는 요소만 골라내야 하는 경우가 자주 발생합니다. 이번 글에서는 파이썬의 pandas 라이브러리를 활용해 10 이상 15 이하인 요소만 필터링하여 출력하는 프로그램을 두 가지 방법으로 구현해 보겠습니다. 문제 정의 입력 — 다음과 같은 시리즈가 있다고 가정해 보겠습니다. 0 12 1 13 2 15 3 20 4 19 5 18 6 11 출력 — 10부터 15 사이(경계값 포함)에 있는 요소만 추출한 결과는 다음과

Total 8989 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:225/450  20-컴퓨터/Page Goto:1 219 220 221 222 223 224 225 226 227 228 229 230 231