프로그램 작성

궁극의 파이썬 초보자 가이드

2021년 10월 30일

목차

  • 환경 설정
    • 로컬 환경 설정
    • 파이썬을 얻는 방법
    • 파이썬을 설치하는 방법
    • 윈도우 설치
    • 유닉스/리눅스 설치
    • MAC 설치
    • Python용 경로 설정
    • Unix/Linux용 경로 설정
    • Windows용 경로 설정
  • 파이썬 환경 변수
    • 파이썬 실행
  • 기본 구문
    • 파이썬 식별자
    • 파이썬 문
    • 파이썬의 들여쓰기
    • 파이썬의 주석
    • 입력 받기
    • 출력 표시
  • 변수 유형
    • 변수에 값 할당
    • 파이썬 데이터 유형
    • 문자열
    • 튜플
    • 기울기
    • 번호
  • 기본 연산자
    • 할당 연산자
    • 비트 연산자
    • 논리 연산자
    • 산술 연산자
    • 비교 연산자
    • ID 연산자
    • 멤버십 운영자
  • 의사결정
    • If 문
    • 다른 경우라면
    • 중첩되는 경우
    • If-elif-else-ladder
    • if 문 약식
    • 약식 if-else 문
  • 루프
    • 루프 동안
    • For 루프
    • 중첩 루프
    • 루프 제어문
    • 계속 문
    • 중단 문
    • 통과 진술
  • 번호
    • 숫자 유형 변환
    • 난수 함수
    • 삼각 함수
    • 수학 함수
  • 문자열
    • 문자열 만들기
    • 문자열 특수 연산자
    • 문자열 형식화 연산자
    • 탈출 문자
    • 기본 제공 문자열 메서드
  • 튜플
    • 튜플의 값 액세스
    • 튜플 업데이트
    • 기본 튜플 연산자
    • 내장 튜플 함수
    • 인덱싱 및 슬라이싱
    • 튜플 삭제
  • 기울기
    • 목록의 값 액세스
    • 목록 업데이트
    • 기본 목록 연산자
    • 내장 목록 함수 및 메서드
    • 인덱싱 및 슬라이싱
    • 목록 요소 삭제
  • 사전
    • 사전 만들기
    • 사전에 요소 추가
    • 사전에서 요소 제거
    • 파이썬 사전 메서드
  • 날짜와 시간
    • 시간 튜플
    • 시간 모듈
    • 캘린더 모듈
  • 기능
    • 함수를 정의하는 방법
    • 함수 호출
    • 참조로 전달
    • 값으로 전달
    • 함수 인수
    • 가변 길이 인수
    • 필수 인수
    • 기본 인수
    • 키워드 인수
    • 익명 기능
  • 모듈
    • 수입 명세서
    • from import 문
    • from import * 문
    • 모듈 찾기
    • locals() 및 globals() 함수
    • 네임스페이스 및 범위 지정
    • dir( ) 함수
    • reload() 함수
  • 파일 I/O
    • 파일 열기
    • 파일 객체 속성
    • 파일 닫기
    • 문 포함
    • 쓰기 방법
    • 읽기 방법
    • 이름 바꾸기() 메서드
    • remove() 메서드
    • 파일 위치
  • 예외
    • 예외란 무엇입니까?
    • 예외 처리
    • 예외 발생
    • 표준 예외 목록
    • 사용자 정의 예외
    • Python의 어설션
  • 클래스 및 객체
    • 수업 만들기
    • 클래스 객체
    • 속성 액세스
    • 내장 클래스 속성
    • 쓰레기 수거
    • 클래스 상속
    • 재정의 메서드
    • 정규식
    • 매치 기능
    • 검색 기능
    • 정규식 수정자
    • 정규 표현식 패턴
    • 캐릭터 클래스
    • 반복 사례
    • 앵커
  • CGI 프로그래밍
    • 웹 브라우징
    • HTTP 헤더
    • CGI 환경 변수
    • GET 메서드
    • POST 방식
    • CGI에서 쿠키 사용
    • 어떻게 작동합니까?
  • MySQL 데이터베이스 액세스
    • 데이터베이스 테이블 생성
    • 삽입 작업
    • 읽기 작업
    • 업데이트 작업
    • DELETE 작업
    • 트랜잭션 수행
    • 커밋 작업
    • 롤백 작업
    • 데이터베이스 연결 해제
    • 오류 처리
  • 네트워크
    • 소켓이란 무엇입니까?
    • 소켓 모듈
    • 파이썬 인터넷 모듈
  • 이메일 보내기
    • Python을 사용하여 HTML 이메일 보내기
    • 이메일로 첨부 파일 보내기
  • 다중 스레드 프로그래밍
    • 새 스레드 시작
    • 스레딩 모듈
    • 스레드 동기화
    • 다중 스레드 우선 순위 대기열
  • XML 처리
  • GUI 프로그래밍
  • 지오메트리 관리
  • 추천 기사

XML 처리

XML은 프로그래머가 다음을 수행할 수 있도록 하는 오픈 소스 언어입니다. 소프트웨어를 개발하다 다른 응용 프로그램에서 읽을 수 있습니다.

XML이란 무엇입니까?

XML(Extensible Markup Language)은 HTML과 같은 마크업 언어입니다. XML은 요구 사항 없이 데이터를 추적하는 데 유용합니다. SQL .

XML 파서 아키텍처 및 API

Python 라이브러리는 XML 작업에 유용한 인터페이스 세트를 제공합니다.

XML 데이터에 대한 두 가지 API는 DOM 및 SAX 인터페이스입니다.

  • DOM(Document Object Model) API - XML ​​문서의 모든 기능을 나타내기 위해 전체 파일을 메모리로 읽고 트리 기반 형식으로 저장하는 World Wide Web Consortium 권장 사항입니다.
  • SAX(Simple API for XML) - 여기에서 관심 이벤트에 대한 콜백을 등록한 다음 파서가 문서를 진행하도록 합니다. 문서에 메모리 제한이 있고 디스크에서 파일을 구문 분석하고 전체 파일이 메모리에 저장될 때 유용합니다.

SAX는 DOM만큼 빠르게 정보를 처리할 수 없습니다. 반면 DOM을 사용하면 리소스를 죽일 수 있습니다.

SAX는 읽기 전용인 반면 DOM은 XML 파일을 변경할 수 있습니다.

SAX API로 XML 구문 분석

SAX는 이벤트 기반 XML 구문 분석을 위한 인터페이스입니다. SAX로 XML을 구문 분석하려면 xml.sax.ContentHandler를 서브클래싱하여 ContentHandler를 생성해야 합니다.

두 개의 메소드 startDocument 및 endDocument는 XML 파일의 시작과 끝에서 호출됩니다.

ContentHandler는 모든 요소의 시작과 끝에서 호출됩니다. 파서가 네임스페이스 모드가 아니면 startElement 및 endElement 메서드가 호출됩니다. 태그는 요소 태그이고 속성은 속성 개체입니다.

다음은 계속 진행하기 전에 이해해야 할 몇 가지 방법입니다.

make_parser 메서드

이 메서드는 새 파서 개체를 만들고 반환합니다. 생성된 파서 개체는 첫 번째 파서 유형이 됩니다.

|_+_|
  • parser_list - 인수는 make_parser 메소드를 구현해야 하는 사용할 파서 목록으로 구성됩니다.

구문 분석 방법

SAX 파서를 생성하고 문서를 구문 분석하는 데 사용됩니다.

|_+_|
  • xmlfile - 읽을 XML 파일의 이름입니다.
  • contenthandler - ContentHandler 객체여야 합니다.
  • errorhandler - 언급된 경우 errorhandler는 SAX ErrorHandler 객체여야 합니다.

parseString 메서드

SAX 파서를 생성하고 XML 문자열을 파싱하는 방법이다.

|_+_|
  • xmlstring - 읽을 XML 문자열의 이름입니다.
  • contenthandler - ContentHandler 객체여야 합니다.
  • errorhandler - 언급된 경우 errorhandler는 SAX ErrorHandler 객체여야 합니다.

GUI 프로그래밍

Tkinter는 Python용 GUI 라이브러리입니다. Python은 Tkinter와 결합될 때 GUI 애플리케이션을 생성하는 쉽고 빠른 방법을 제공합니다. Tkinter는 Tk GUI 툴킷에 대한 강력한 객체 지향 인터페이스를 제공합니다.

Tkinter의 도움으로 GUI 응용 프로그램을 만드는 것은 쉬운 작업입니다. 다음 단계를 수행해야 합니다.

  • 가져오기 티킨터 기준 치수.
  • GUI 응용 프로그램 기본 창을 만듭니다.
  • GUI 애플리케이션에 위에서 언급한 위젯을 추가하십시오.
  • 이벤트 루프를 입력하여 각 이벤트에 대해 조치를 취하십시오.

Tkinter 위젯

예 아니오 운영자 설명
하나 캔버스응용 프로그램에서 선, 타원, 다각형 및 직사각형과 같은 모양을 그리는 데 사용됩니다.
체크버튼옵션의 개수를 체크박스로 표시할 때 사용합니다.
메뉴사용자에게 여러 명령을 제공하는 데 사용됩니다. 명령은 Menubutton 내부에 포함되어 있습니다.
4 메세지사용자의 값을 수락하는 여러 줄 텍스트 필드를 표시하는 데 사용됩니다.
5 스핀박스고정된 수의 값에서 선택하는 데 사용할 수 있는 표준 Tkinter Entry 위젯의 변형입니다.
6 라벨프레임컨테이너 위젯입니다. 목적은 복잡한 창 레이아웃을 위한 스페이서 또는 컨테이너 역할을 하는 것입니다.
7 PanedWindow수평 또는 수직으로 배열된 다수의 창을 포함하는 컨테이너 위젯입니다.
8 단추응용 프로그램에서 버튼을 표시하는 데 사용됩니다.
9 tkMessageBox응용 프로그램에 메시지 상자를 표시하는 데 사용됩니다.
10 최상위별도의 창 컨테이너를 제공하는 데 사용됩니다.
열하나 액자다른 위젯을 구성하는 컨테이너 위젯으로 사용됩니다.
12 리스트 박스사용자에게 옵션 목록을 제공하는 데 사용됩니다.
13 메뉴버튼응용 프로그램에서 메뉴를 표시하는 데 사용됩니다.
14 라디오 버튼옵션을 라디오 버튼으로 표시하는 데 사용됩니다.
열 다섯 규모슬라이더 위젯을 제공하는 데 사용됩니다.
16 기입사용자로부터 값을 수락하기 위한 한 줄 텍스트 필드를 표시하는 데 사용됩니다.
17 상표다른 위젯에 대한 한 줄 캡션을 제공하는 데 사용됩니다. 이미지를 포함할 수도 있습니다.
18 텍스트여러 줄의 텍스트를 표시하는 데 사용됩니다.
19 스크롤 바목록 상자와 같은 다양한 위젯에 스크롤 기능을 추가하는 데 사용됩니다.

지오메트리 관리

모든 Tkinter 위젯은 상위 위젯 영역 전체에 위젯을 구성하는 일부 지오메트리 관리 방법에 액세스할 수 있습니다.

  • 그만큼 팩() 방법 - 상위 위젯에 배치하기 전에 차단합니다.
  • 그만큼 그리드() 방법 - 상위 위젯의 테이블과 같은 구조.
  • 그만큼 장소() 방법 - 상위 위젯의 특정 위치에 배치합니다.