Other Languages



PyCharm boxshot.


Published By:  JetBrains s.r.o

Feature packed, productivity-enhancing Python IDE with support for the Django framework

Product Variants

Other product variants may be available, please contact us or request a call back if you cannot see what you are looking for.

New Features
Documents and Downloads

PyCharm brings an outstanding lineup of new features for productive Python, Web and scientific development that work together smoothly to offer you a unique coding experience.

What's new in PyCharm

Python-related improvements:
  • Improved Django integration: developers can create remote projects without having a local interpreter installed, make use of Django forms, and take advantage of other improvements.
  • Python console: multi-line commands, copy-pasting from console into files.

Improved variable explorer.
  • Developers are able to carry out type hinting, with automatic type hinting based on run-time collected types.
  • Python support.
  • Thread suspension when hitting breakpoints.
  • The debugger got 40% faster, and now also shows function return values. If you use scipy or pandas, you’ll like the new viewers for Numpy Arrays and pandas * DataFrames, which can be opened straight from the debugger.
  • Per-line statistical profiling with vmprof (in addition to cProfile and Yappi support).
  • Improved Docker support, including Docker Compose.
  • Better Jupyter notebooks (formerly known as IPython notebooks) support.
  • Support for custom package repositories.

Platform enhancements:
  • Better support for React, Angular, and more JavaScript frameworks.
  • More web tool support: Flow, Stylelint, and more.
  • Faster VCS log search, and improved log interface.
  • Improved merge conflict assistance: code highlighting, navigation, automatic resolution for simple conflicts.
  • Improved Git support: Worktree, Rebase, and Remote management.
  • Support for VCS patches.
  • Database tool improvements: PyCharm 2016 bundles many of the features available in DataGrip, the new JetBrains IDE for databases.
  • PyCharm supports font ligatures and bundles Fira code: an open-source font with coding ligatures.

Improvements in the previous update: PyCharm

vmprof Profiler Support Pro Only - For those who care about performance, PyCharm provides profiling support. Additionally to the previously supported cProfile and Yappi profilers, PyCharm brings support for vmprof, the sampling (statistical) Python profiler written in C and developed by members of the PyPy team

Pandas Dataframes Viewer - PyCharm has had a special array viewer for NumPy arrays for a couple of years. PyCharm brings Pandas Dataframes support – a must-have feature for scientific developers and data scientists.

Thread Suspend Option - Previously, when the PyCharm debugger reached a breakpoint during execution, only the corresponding thread was suspended while others kept running. Now there is a Suspend option with two values: All and Thread. ‘All’ makes all threads stop at once, while ‘Thread’ stops the corresponding thread.

Function Return Values in the Debugger - The new option has appeared in Debug tool window: Show Return Values. Function return values are now shown in the PyCharm’s debugger after stepping out from a function.

Package Installation from requirements.txt - PyCharm understands the syntax of extra options in requirements.txt files, automatically installing all the specified extras. For example, now you can use the following code in your requirements.txt files:
ipython [notebook]

Configuration for Optimize Imports - Optimize Imports has been a neat feature for many years. In PyCharm 2016.2 the new dedicated setting for Optimize Imports action appeared. It allows you to configure how imports in the current file are sorted and arranged in groups.

Postfix Code Completion - Postfix code completion helps reduce backward caret jumps as you write code. It lets you transform an already typed expression to another one based on the postfix you've added and the context of the expression. It has been improved with the “main' and “print' postfix templates extracting your [expression].main and [expression].print code snippets respecting Python 2 and Python 3 versions.

Lettuce Scenario Outlines - In PyCharm BDD support got an important improvement. PyCharm now recognizes Scenario Outlines sections in Lettuce feature files. Scenario Outlines are supported for Lettuce version 0.2.22 and higher.

Support for Ligatures - The editor in PyCharm now supports fonts with programming ligatures, like Fira Code, Monoid, Hasklig and PragmataPro. Enable this in Preferences | Editor | Colors and Fonts | Font.

The Inspection Tool Improvements - The Inspection tool window has been redesigned for better ergonomics: now code location for each of the problems is displayed along with controls to either apply a quick-fix or suppress an inspection.

Editor Background Image - Customize your IDE’s look by choose a background image for the editor and the IDE frame. Search for ‘Set Background Image’ with the Search Everywhere action double Shift.

Regex Support Improvement - Coding assistance for Regex has been extended with better error reporting, and code completion is now available for named group references.

Unversioned Files Handling - The Commit dialog now shows unversioned files (so you don’t forget to commit something important).

Improvements in Working with Patches
Working with VCS patches has never been easier. With PyCharm a patch can be applied from the clipboard (when the IDE obtains focus), or by dragging a file into the IDE. In case a file has been changed since a patch was created for it, but PyCharm cannot find its original revision, you'll be prompted to apply the patch using a Merge-like dialog. Also, the Apply Patch dialog provides the Show Diff action to compare the patch to your local version.

The VCS Log Viewer - The Log viewer for Git and Mercurial continues to get better:
  • It loads in the background on every change (a commit, fetch, rebase, etc.), so it’s always ready when you open it.
  • The way the Log shows the loading progress has been reworked. Now, when refreshing, a thin stripe appears under the toolbar.
  • When you select several commits, you see all commit details.
  • Ctrl+L can be used for navigating to the Filter field.

Database Tools - Pro Only
  • Code completion for database names in Data Sources and Drivers.
  • Import of CSV, TSV (DSV) files to a database.
  • Language injections to SQL code.
  • Table Editor provides completion for column values.
  • PostgreSQL support has been extended to Schema Search Path, Rangetypes and types with TimeZone.

Full Python Support: PyCharm now fully supports the latest Python with all of its new libraries and features.

Code Insight for Django ORM Methods: This brand new functionality provides you with code completion for model field names and their modifiers in Django ORM lookups.

Conda Integration: A big improvement for scientific Python developers, Conda integration as implemented in PyCharm is primarily designed for managing Anaconda installations.

“Make Top-Level Function' Refactoring: This brand-new refactoring complements the huge set of Python refactorings implemented in PyCharm. With this refactoring you can safely move a nested function to the top level.

New UI for Testing and Tests History: Test durations are now shown right in the test results tree, to provide you with more information on their performance.
Shopping Basket
    0 Item(s)

    View and amend your basket
    ISV Royalty Licensing