Title Page Copyright and Credits Hands-On Application Development with PyCharm Dedication About Packt Why subscribe? Contributors About the author About the reviewers Packt is searching for authors like you Preface Who this book is for What this book covers To get the most out of this book Download the example code files Download the color images Code in Action Conventions used Get in touch Reviews Section 1: The Basics of PyCharm Introduction to PyCharm - the Most Popular IDE for Python The background of PyCharm The recent rise of Python The philosophy of IDEs PyCharm as a Python IDE PyCharm – an essential part of the Python community Differentiating PyCharm from other editors/IDEs Understanding the Professional and Community editions Prices and licensing Further support in the Professional Edition Choosing a PyCharm edition that fits your profession Summary Questions Further reading Installing and Configuring PyCharm Technical requirements Downloading, installing, and registration System requirements Downloading Installing License activation Setting up PyCharm General preferences What is included in the settings How to do it in PyCharm Editor What is included in the editor How to do it in PyCharm Keymap The background of keymap How to do it in PyCharm Shortcut customizations Getting started with PyCharm projects Creating a project Interacting with a PyCharm project Getting the source code from GitHub Summary Questions Further reading Section 2: Improving Your Productivity Customizing Interpreters and Virtual Environments Technical requirements Customizing the PyCharm workspace Inside a project window Navigating within a project Panels in a project window Installing packages Moving panels within a project window Creating a PyCharm project – revisited Choosing a project type Project-specific boilerplate code Considerations about Community PyCharm Virtual environments and interpreters Understanding the concepts Python interpreters Virtual environments in Python Virtual environments and interpreters together Managing virtual environments and interpreters in PyCharm Configuring the interpreter for a created project Why does it matter? Options in PyCharm Importing an external project into PyCharm Summary Questions Further reading Editing and Formatting with Ease in PyCharm Technical requirements Code inspection Specifics of the code analyzer Code inspection in a PyCharm project Dead code Unused declarations Unresolved references PEP 8 style suggestions Customizable code completion support The case for code completion support How is code completion different in PyCharm? Basics versus smart code completion Postfix code completion Hippie completion Intentions Customizing your code completion engine Match case Sorting suggestions alphabetically Showing the documentation popup in [...] ms Parameter information Intentions Collecting runtime types Troubleshooting Indexing process Power save mode Out-of-scope files Refactoring What is refactoring? Refactoring in PyCharm Renaming Inline variable Extracting methods Conversion between method and function Exporting a function to another file A dynamic approach to documentation Docstrings – documentation for Python Creating documentation Viewing documentation Quick Documentation Quick Definition Summary Questions Further reading Version Control with Git in PyCharm Technical requirements Version control and Git essentials What does version control mean? Situations that require version control Git and GitHub Downloading Git and registering for GitHub Setting up a repository Add, commit, and push Fork, clone, and pull requests Branching and merging Ignoring files Version control in PyCharm Setting up a local repository The Version Control panel Add, commit, and push Branching and merging Ignoring files Version control diagrams Summary Questions Further reading Seamless Testing, Debugging, and Profiling Technical requirements Testing Unit testing fundamentals Unit testing in Python Unit testing in PyCharm PyCharm's run arrows The Run panel in the context of unit testing Creating unit tests with PyCharm Tests for the Counter class Debugging Debugging fundamentals Debugging in PyCharm Starting a debugging session and the Debug panel Placing breakpoints Stepping functionalities Watches Evaluating expressions at all times Profiling Profiling fundamentals Profiling in PyCharm Summary Questions Further reading Section 3: Web Development in PyCharm Web Development with JavaScript, HTML, and CSS Technical requirements Introduction to JavaScript, HTML, and CSS Understanding the importance of HTML and CSS Writing our code with HTML Writing our code with CSS Understanding the importance of JavaScript Implementing web pages in PyCharm Using HTML and CSS in PyCharm Creating new HTML files Including external files in HTML code Viewing documentation Emmet Viewing HTML output in browsers Extracting HTML source code in PyCharm Using JavaScript in PyCharm Choosing the version for JavaScript Hints about parameters Debugging the code Live editing Specifying a framework for new applications Summary Questions Further reading Integrating Django in PyCharm Technical requirements An overview of Django Django and the idea of web frameworks What makes Django special? Django models Admin access in Django Django templates Jinja Django versus Flask Django in PyCharm Starting a Django project Structure of a Django project Initial configurations Running manage.py and launching the server Creating Django models Making migrations The admin interface Creating a superuser and logging in Connecting the admin interface to models Creating Django views Customizing the run/debug configuration Making templates Summary Questions Further reading Understanding Database Management with PyCharm Technical requirements Connecting to a data source Working with a database in PyCharm Working with SQL SQL fundamentals Using SQL in PyCharm The PyCharm table view Comparing and exporting query output Diagrams for databases Relational database Diagrams for database objects Diagrams for queries Summary Questions Further reading Building a Web Application in PyCharm Technical requirements Starting a web project in PyCharm Creating a Django project Creating a Django application and models Using the admin interface Working with the Database panel Making queries via Python code Creating Django's list views Creating Django's detail views Forms and emails Creating the interface for the share feature Configuring Django emails Deploying your web project Hosting services Amazon Web Services Google Cloud DigitalOcean Heroku Production-specific settings Summary Questions Further reading Section 4: Data Science with PyCharm Turning on Scientific Mode Technical requirements Starting a scientific project in PyCharm Creating a scientific project in PyCharm Setting up a scientific project The README.md file Installing packages Running the code Toggling Scientific Mode Understanding the advanced features of PyCharm's scientific projects The documentation viewer Using code cells in PyCharm Implementing PyCharm code cells Working with CSV data Using the CSV plugin Summary Questions Further reading Dynamic Data Viewing with SciView and Jupyter Technical requirements Data viewing made easy with PyCharm's SciView Viewing and working with plots Viewing and working with data Understanding IPython and magic commands Installing and setting up IPython Introducing IPython magic commands Leveraging Jupyter notebooks Understanding Jupyter basics The idea of iterative development Editing Jupyter notebooks Jupyter notebooks in PyCharm Summary Questions Further reading Building a Data Pipeline in PyCharm Technical requirements Working with datasets Starting with a question Collecting data Version control for datasets Data cleaning and pre-processing Reading in dataset Data cleaning One-hot encoding Problem-specific techniques Saving and viewing processed data Data analysis and insights Starting the notebook and reading in data Using charts and graphs Machine-learning-based insights Scripts versus notebooks in data science Summary Questions Further reading Section 5: Plugins and Conclusion More Possibilities with PyCharm Plugins Technical requirements Exploring PyCharm plugins Opening the plugin window Downloading and installing a plugin Updating and removing plugins Best plugins to use for your PyCharm projects Using Database Navigator Using LiveEdit Using the CSV Plugin Using Markdown Using String Manipulation Advanced plugin-related options Required plugins Installing plugins from disk Developing custom plugins Summary Questions Further reading Future Developments Technical requirements Miscellaneous topics in PyCharm Using remote Python interpreters Using macros File watchers Taking a step back Improving your productivity Web development with PyCharm Data science with PyCharm Moving forward with PyCharm Using official documentation Future updates and releases PyCharm – the Educational Edition Troubleshooting at a high level Summary Questions Further reading Assessments Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11 Chapter 12 Chapter 13 Chapter 14 Chapter 15 Other Books You May Enjoy Leave a review - let other readers know what you think