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를 입력하기만 하면 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 스텁(Epydoc, reStructuredText, Google, NumPy)이 자동 생성됩니다.
PyCharm은 Docstring 내의 태그와 태그 매개변수에 대한 구문 강조 표시 및 코드 완성 기능을 비롯하여 코드 일치 검사, 리팩터링 시 자동 업데이트를 제공합니다.