title: PyCharm
category: page
slug: pycharm
sortorder: 0205
toc: False
sidebartitle: PyCharm
meta: PyCharm is a text editor and integrated development environment specifically designed for writing Python code.


[PyCharm](https://www.jetbrains.com/pycharm/) is a text editor and 
integrated development environment specifically designed for writing 
Python code.

<a href="https://www.jetbrains.com/pycharm/" class="nob"><img src="/img/logos/pycharm.jpg" width="100%" alt="PyCharm logo, copyright JetBrains." class="shot outl"></a>

<div class="well see-also">PyCharm is an implementation of the <a href="/text-editors-ides.html">text editors and IDEs</a> concept. Learn how these parts fit together in the <a href="/development-environments.html">development environments</a> chapter or view <a href="/table-of-contents.html">all topics</a>.</div>


### PyCharm resources
* JetBrains provides [courses for the PyCharm Educational Edition](https://github.com/JetBrains/pycharm-courses)
  that can be used to learn any edition of the IDE.

* The 
  [Mastering PyCharm](https://training.talkpython.fm/courses/explore_pycharm/mastering-pycharm-ide)
  Talk Python to Me course is awesome when you want to invest in your skills 
  for using the IDE well.
  
* [Worth the switch to Pycharm?](https://www.reddit.com/r/Python/comments/6ac5pk/worth_the_switch_to_pycharm/)
  is a solid discussion thread with different developers' perspectives
  on using PyCharm for coding their applications.

* [Using PyCharm with Pyramid](https://docs.pylonsproject.org/projects/pyramid-cookbook/en/latest/development_tools/pycharm.html)
  is specific to developing and debugging 
  [with the Pyramid web framework](/pyramid.html).

* [Just switched from Atom to PyCharm](https://www.reddit.com/r/learnpython/comments/5j67wu/just_switched_from_atom_to_pycharm/)
  is a Reddit [/r/learnpython](https://www.reddit.com/r/learnpython)
  thread with a positive experience of switching to PyCharm along with
  some comments and feedback from other developers.

* [PyCharm Vs Visual Studio Code For Python Development](https://www.c-sharpcorner.com/article/pycharm-vs-visual-studio-code-for-python-development/)
  compares the editors on performance, extensions and resource consumption
  for Python development.

* PyCharm has excellent first-party official documentation for 
  [getting started and configuring the IDE](https://www.jetbrains.com/help/pycharm/quick-start-guide.html).
  The advantagee to using the official docs is that they tend to
  be more up-to-date than community blog posts that were not
  published recently because PyCharm has new major releases 
  twice per year.

* [Getting Started with PyCharm](https://confluence.jetbrains.com/display/PYH/Getting+Started+with+PyCharm)
  is another JetBrains-produced tutorial that is exceptionally in-depth
  and just right for beginners who need help with every step of setting
  up and creating their first Python project.

* [Setting Up a Python Development Environment with PyCharm](https://www.ev3dev.org/docs/tutorials/setting-up-python-pycharm/)
  is focused on the EV3 Lego Mindstorm Linux distribution but has some 
  good information and steps for anyone setting up PyCharm for the first time.

* [flask-pycharm-templates](https://github.com/mstuttgart/flask-pycharm-templates)
  are snippets that are commonly used when building Python, 
  [Jinja2](/jinja2.html) and [Flask](/flask.html) applications that you can 
  import into your environment to use during development.

* [Unit Tests and Doctests in PyCharm](http://www.jessicayung.com/unit-tests-and-doctests-in-pycharm/)
  is a beginner's guide on why you would want to use tests and doctests in
  your Python code and run them with PyCharm.
