지능적인 코딩 지원

PyCharm은 스마트 코드 완성, 코드 검사, 즉석 오류 강조 표시 및 빠른 수정, 자동 코드 리팩터링, 풍부한 탐색 기능을 제공합니다.

지능적인 코드 에디터

구문 강조 표시

Python 코드 및 Django 템플릿에 사용자 지정 가능한 색상을 적용해 더 쉽게 코드를 판독하세요. 사전 정의된 여러 색상 테마 중에서 선택할 수 있습니다.

자동 들여쓰기 및 코드 서식 지정

자동 들여쓰기는 새 줄에 삽입됩니다. 들여쓰기 검사 및 코드 서식 재지정은 프로젝트의 코드 스타일 설정을 따릅니다.

구성 가능한 코드 스타일

사전 정의된 코딩 스타일을 선택하여 다양한 지원 언어에 맞는 코드 스타일 구성에 적용하세요.

코드 완성

내용을 입력하면, 또는 Ctrl+Space를 누르면 키워드, 클래스, 변수 등의 코드가 완성됩니다. 에디터 제안에서는 컨텍스트 인식을 기반으로 가장 적절한 옵션을 제공합니다.

코드 선택 및 주석

코드 블록을 선택한 후 단축키를 사용해 표현식, 줄, 논리적 코드 블록 등으로 확장하세요. 키를 한 번만 누르면 현재 줄 또는 선택 항목에 주석을 추가하거나 취소할 수 있습니다.

코드 서식 지정 도구

코드 스타일 구성 및 기타 기능을 가진 코드 서식 지정 도구를 이용하면 코드를 깔끔하게 작성할 수 있어 추후 코드 지원 작업이 간편해집니다. PyCharm에는 Python용 PEP-8을 비롯해 지원되는 언어를 위한 기타 표준 코드 서식 지정이 기본 제공됩니다.

코드 조각

사용자 지정 가능하고 매개변수화된 고급 라이브 코드 템플릿 및 코드 조각을 이용해 시간을 절약하세요.

코드 접기

코드 접기를 비롯해 중괄호/소괄호 및 따옴표의 자동 삽입, 짝이 되는 중괄호/소괄호 강조 표시 등의 기능을 이용할 수 있습니다.

즉각적인 오류 강조 표시

코드를 입력하는 즉시 오류가 표시됩니다. 또한, 통합된 철자 검사기가 식별자와 주석의 철자 오류를 검사합니다.

다중 캐럿 및 선택

다중 캐럿을 사용하면 파일에서 여러 위치를 동시에 편집할 수 있습니다.

코드 분석

Python 코드가 입력되는 즉시, 수많은 코드 검사 기능이 코드를 확인하고, 전체 프로젝트에서 잠재적인 오류 또는 코드 스멜을 검사합니다.

빠른 수정

대부분의 검사에 지원되는 빠른 수정 기능 덕분에 손쉽게 코드를 즉시 수정하거나 개선할 수 있습니다. Alt+Enter를 누르면 각 검사에 해당하는 옵션이 표시됩니다.

중복 코드 탐지기

스마트 중복 코드 탐지기는 코드를 분석하고, 복사 및 붙여넣은 코드를 검색합니다. 이 도구를 실행하면 리팩터링할 대상 목록이 표시되고 리팩터링을 수행하면 코드를 DRY(중복 제거) 상태로 쉽게 유지할 수 있습니다.

구성 가능한 언어 삽입

기본적으로 코드 완성, 오류 강조 표시, 기타 코딩 지원 기능을 사용해 문자열 리터럴에 포함된 비 Python 코드를 편집할 수 있습니다.

코드 자동 생성

빠른 수정 기능으로 코드를 사용 위치에서 자동 생성할 수 있으며, docstring 및 코드 일치 검사, 리팩터링 시 자동 업데이트 기능도 이용할 수 있습니다. docstring 스텁(reStructuredText, Epytext, Google 및 NumPy)이 자동 생성됩니다.

인텐션 액션

인텐션 액션을 사용하면 올바른 코드에 자동 변경을 적용하여 코드를 개선하거나 루틴 코딩을 더 간편하게 작업할 수 있습니다.

스마트 코드 탐색

전체 검색

PyCharm에서는 소스 코드의 항목이든, 사용자 동작이든, UI 요소이든 관계없이 모두 찾을 수 있습니다. Shift를 두 번 눌러 찾으려는 코드를 입력해 보세요. 사용자의 특정 요구 사항에 따라 검색 범위를 설정할 수도 있습니다.

클래스/파일/심볼로 이동

Go to class/file/symbol(클래스/파일/심볼로 이동)은 빠른 프로젝트 탐색에 중요한 기능입니다. 항목을 더 빠르게 찾으려면 와일드카드와 줄임말을 사용하세요.

선언으로 이동

참조에서 Go to declaration(선언으로 이동)이 실행되면 해당 파일이 열리고 심볼 선언으로 이동됩니다.

사용 위치 검색

Find Usages(사용 위치 검색) 기능을 이용하면 코드, 현재 파일 또는 전체 프로젝트에서 심볼(예: 클래스, 메서드, 필드 등)의 사용 위치를 찾을 수 있습니다.

렌즈 모드

이 모드에서는 스크롤 바의 아무 곳이나 마우스로 가리키기만 해도 코드를 면밀히 검토할 수 있습니다. 경고 또는 오류 줄을 마우스로 가리키면코드 부분에 적절한 메시지의 주석이 추가됩니다.

북마크 및 TODO

코드에 북마크를 설정하면 쉽게 코드를 탐색하거나, 코드에 알림을 남길 수 있습니다. 주석에 TODO를 입력하기만 하면 PyCharm이 별도의 뷰에서 모든 TODO를 추적하여 나열합니다.

빠르고 안전한 리팩터링

쉽고 안전하게 전체 프로젝트 변경이 가능합니다. 로컬 변경을 바로 실행할 수 있습니다. 리팩터링은 일반 Python을 비롯하여 Django, Flask, Pyramid 등의 다른 프로젝트 유형에서 작동합니다.

이름 변경 및 이동

Rename(이름 변경) 및 Move(이동) 리팩터링 기능을 파일, 함수, 상수, 클래스, 프로퍼티, 메서드, 매개변수, 로컬 및 전역 변수에 사용할 수 있습니다.

추출 리팩터링

메서드 내에서 코드 구조를 개선하려면 Extract Variable/Field/Constant/Parameter(변수/필드/상수/매개변수 추출) 및 Inline Local(지역 코드 인라인화)을 사용하세요.

메서드 추출

긴 메서드를 분리하려면 Extract Method(메서드 추출)를 사용하고, 메서드 및 클래스를 이동하려면 Extract Superclass(상위 클래스 추출), Push Up(위로 이동), Pull Down(아래로 이동)을 사용하세요.

기타 리팩터링

Change signature(시그너처 변경), Convert to Python package/Convert to Python module(Python 패키지로 변환/Python 모듈로 변환), Make top level function(최상위 함수 설정) 등의 리팩터링도 제공됩니다.

문서

빠른 정의/문서 뷰

컨텍스트를 벗어날 필요 없이 그 자리에서 객체 정의 또는 문서를 확인할 수 있습니다.

외부 문서 뷰

Python 표준 라이브러리, Django, Google App Engine, Scientific 패키지 등을 위한 브라우저에서 외부 문서 뷰를 이용할 수 있습니다(Shift+F1 사용).

Docstring 스텁 생성

메서드의 docstring 스텁(Epydoc, reStructuredText, Google, NumPy)이 자동 생성됩니다.

강조 표시 및 코드 완성

PyCharm은 Docstring 내의 태그와 태그 매개변수에 대한 구문 강조 표시 및 코드 완성 기능을 비롯하여 코드 일치 검사, 리팩터링 시 자동 업데이트를 제공합니다.