
Python Crash Course in Vizag
Table of contents :
Cover
Praise for Python Crash Course
Copyright
Dedication
About the Author and Technical Reviewer
Brief Contents
Contents in Detail
Preface to the Third Edition
Acknowledgments
Introduction
Who Is This Book For?
What Can You Expect to Learn?
Online Resources
Why Python?
Part I: Basics
Chapter 1: Getting Started
Setting Up Your Programming Environment
Python Versions
Running Snippets of Python Code
About the VS Code Editor
Python on Different Operating Systems
Python on Windows
Python on macOS
Python on Linux
Running a Hello World Program
Installing the Python Extension for VS Code
Running hello_world.py
Troubleshooting
Running Python Programs from a Terminal
On Windows
On macOS and Linux
Exercise 1-1: python.org
Exercise 1-2: Hello World Typos
Exercise 1-3: Infinite Skills
Summary
Chapter 2: Variables and Simple Data Types
What Really Happens When You Run hello_world.py
Variables
Naming and Using Variables
Avoiding Name Errors When Using Variables
Variables Are Labels
Exercise 2-1: Simple Message
Exercise 2-2: Simple Messages
Strings
Changing Case in a String with Methods
Using Variables in Strings
Adding Whitespace to Strings with Tabs or Newlines
Stripping Whitespace
Removing Prefixes
Avoiding Syntax Errors with Strings
Exercise 2-3: Personal Message
Exercise 2-4: Name Cases
Exercise 2-5: Famous Quote
Exercise 2-6: Famous Quote 2
Exercise 2-7: Stripping Names
Exercise 2-8: File Extensions
Numbers
Integers
Floats
Integers and Floats
Underscores in Numbers
Multiple Assignment
Constants
Exercise 2-9: Number Eight
Exercise 2-10: Favorite Number
Comments
How Do You Write Comments?
What Kinds of Comments Should You Write?
Exercise 2-11: Adding Comments
The Zen of Python
Exercise 2-12: Zen of Python
Summary
Chapter 3: Introducing Lists
What Is a List?
Accessing Elements in a List
Index Positions Start at 0, Not 1
Using Individual Values from a List
Exercise 3-1: Names
Exercise 3-2: Greetings
Exercise 3-3: Your Own List
Modifying, Adding, and Removing Elements
Modifying Elements in a List
Adding Elements to a List
Removing Elements from a List
Exercise 3-4: Guest List
Exercise 3-5: Changing Guest List
Exercise 3-6: More Guests
Exercise 3-7: Shrinking Guest List
Organizing a List
Sorting a List Permanently with the sort() Method
Sorting a List Temporarily with the sorted() Function
Printing a List in Reverse Order
Finding the Length of a List
Exercise 3-8: Seeing the World
Exercise 3-9: Dinner Guests
Exercise 3-10: Every Function
Avoiding Index Errors When Working with Lists
Exercise 3-11: Intentional Error
Summary
Chapter 4: Working with Lists
Looping Through an Entire List
A Closer Look at Looping
Doing More Work Within a for Loop
Doing Something After a for Loop
Avoiding Indentation Errors
Forgetting to Indent
Forgetting to Indent Additional Lines
Indenting Unnecessarily
Indenting Unnecessarily After the Loop
Forgetting the Colon
Exercise 4-1: Pizzas
Exercise 4-2: Animals
Making Numerical Lists
Using the range() Function
Using range() to Make a List of Numbers
Simple Statistics with a List of Numbers
List Comprehensions
Exercise 4-3: Counting to Twenty
Exercise 4-4: One Million
Exercise 4-5: Summing a Million
Exercise 4-6: Odd Numbers
Exercise 4-7: Threes
Exercise 4-8: Cubes
Exercise 4-9: Cube Comprehension
Working with Part of a List
Slicing a List
Looping Through a Slice
Copying a List
Exercise 4-10: Slices
Exercise 4-11: My Pizzas, Your Pizzas
Exercise 4-12: More Loops
Tuples
Defining a Tuple
Looping Through All Values in a Tuple
Writing Over a Tuple
Exercise 4-13: Buffet
Styling Your Code
The Style Guide
Indentation
Line Length
Blank Lines
Other Style Guidelines
Exercise 4-14: PEP 8
Exercise 4-15: Code Review
Summary
Chapter 5: if Statements
A Simple Example
Conditional Tests
Checking for Equality
Ignoring Case When Checking for Equality
Checking for Inequality
Numerical Comparisons
Checking Multiple Conditions
Checking Whether a Value Is in a List
Checking Whether a Value Is Not in a List
Boolean Expressions
Exercise 5-1: Conditional Tests
Exercise 5-2: More Conditional Tests
if Statements
Simple if Statements
if-else Statements
The if-elif-else Chain
Using Multiple elif Blocks
Omitting the else Block
Testing Multiple Conditions
Exercise 5-3: Alien Colors #1
Exercise 5-4: Alien Colors #2
Exercise 5-5: Alien Colors #3
Exercise 5-6: Stages of Life
Exercise 5-7: Favorite Fruit
Using if Statements with Lists
Checking for Special Items
Checking That a List Is Not Empty
Using Multiple Lists
Exercise 5-8: Hello Admin
Exercise 5-9: No Users
Exercise 5-10: Checking Usernames
Exercise 5-11: Ordinal Numbers
Styling Your if Statements
Exercise 5-12: Styling if Statements
Exercise 5-13: Your Ideas
Summary
Chapter 6: Dictionaries
A Simple Dictionary
Working with Dictionaries
Accessing Values in a Dictionary
Adding New Key-Value Pairs
Starting with an Empty Dictionary
Modifying Values in a Dictionary
Removing Key-Value Pairs
A Dictionary of Similar Objects
Using get() to Access Values
Exercise 6-1: Person
Exercise 6-2: Favorite Numbers
Exercise 6-3: Glossary
Looping Through a Dictionary
Looping Through All Key-Value Pairs
Looping Through All the Keys in a Dictionary
Looping Through a Dictionary’s Keys in a Particular Order
Looping Through All Values in a Dictionary
Exercise 6-4: Glossary 2
Exercise 6-5: Rivers
Exercise 6-6: Polling
Nesting
A List of Dictionaries
A List in a Dictionary
A Dictionary in a Dictionary
Exercise 6-7: People
Exercise 6-8: Pets
Exercise 6-9: Favorite Places
Exercise 6-10: Favorite Numbers
Exercise 6-11: Cities
Exercise 6-12: Extensions
Summary
Chapter 7: User Input and while Loops
How the input() Function Works
Writing Clear Prompts
Using int() to Accept Numerical Input
The Modulo Operator
Exercise 7-1: Rental Car
Exercise 7-2: Restaurant Seating
Exercise 7-3: Multiples of Ten
Introducing while Loops
The while Loop in Action
Letting the User Choose When to Quit
Using a Flag
Using break to Exit a Loop
Using continue in a Loop
Avoiding Infinite Loops
Exercise 7-4: Pizza Toppings
Exercise 7-5: Movie Tickets
Exercise 7-6: Three Exits
Exercise 7-7: Infinity
Using a while Loop with Lists and Dictionaries
Moving Items from One List to Another
Removing All Instances of Specific Values from a List
Filling a Dictionary with User Input
Exercise 7-8: Deli
Exercise 7-9: No Pastrami
Exercise 7-10: Dream Vacation
Summary
Chapter 8: Functions
Defining a Function
Passing Information to a Function
Arguments and Parameters
Exercise 8-1: Message
Exercise 8-2: Favorite Book
Passing Arguments
Positional Arguments
Keyword Arguments
Default Values
Equivalent Function Calls
Avoiding Argument Errors
Exercise 8-3: T-Shirt
Exercise 8-4: Large Shirts
Exercise 8-5: Cities
Return Values
Returning a Simple Value
Making an Argument Optional
Returning a Dictionary
Using a Function with a while Loop
Exercise 8-6: City Names
Exercise 8-7: Album
Exercise 8-8: User Albums
Passing a List
Modifying a List in a Function
Preventing a Function from Modifying a List
Exercise 8-9: Messages
Exercise 8-10: Sending Messages
Exercise 8-11: Archived Messages
Passing an Arbitrary Number of Arguments
Mixing Positional and Arbitrary Arguments
Using Arbitrary Keyword Arguments
Exercise 8-12: Sandwiches
Exercise 8-13: User Profile
Exercise 8-14: Cars
Storing Your Functions in Modules
Importing an Entire Module
Importing Specific Functions
Using as to Give a Function an Alias
Using as to Give a Module an Alias
Importing All Functions in a Module
Styling Functions
Exercise 8-15: Printing Models
Exercise 8-16: Imports
Exercise 8-17: Styling Functions
Summary
Chapter 9: Classes
Creating and Using a Class
Creating the Dog Class
The __init__() Method
Making an Instance from a Class
Exercise 9-1: Restaurant
Exercise 9-2: Three Restaurants
Exercise 9-3: Users
Working with Classes and Instances
The Car Class
Setting a Default Value for an Attribute
Modifying Attribute Values
Exercise 9-4: Number Served
Exercise 9-5: Login Attempts
Inheritance
The __init__() Method for a Child Class
Defining Attributes and Methods for the Child Class
Overriding Methods from the Parent Class
Instances as Attributes
Modeling Real-World Objects
Exercise 9-6: Ice Cream Stand
Exercise 9-7: Admin
Exercise 9-8: Privileges
Exercise 9-9: Battery Upgrade
Importing Classes
Importing a Single Class
Storing Multiple Classes in a Module
Importing Multiple Classes from a Module
Importing an Entire Module
Importing All Classes from a Module
Importing a Module into a Module
Using Aliases
Finding Your Own Workflow
Exercise 9-10: Imported Restaurant
Exercise 9-11: Imported Admin
Exercise 9-12: Multiple Modules
The Python Standard Library
Exercise 9-13: Dice
Exercise 9-14: Lottery
Exercise 9-15: Lottery Analysis
Exercise 9-16: Python Module of the Week
Styling Classes
Summary
Chapter 10: Files and Exceptions
Reading from a File
Reading the Contents of a File
Relative and Absolute File Paths
Accessing a File’s Lines
Working with a File’s Contents
Large Files: One Million Digits
Is Your Birthday Contained in Pi?
Exercise 10-1: Learning Python
Exercise 10-2: Learning C
Exercise 10-3: Simpler Code
Writing to a File
Writing a Single Line
Writing Multiple Lines
Exercise 10-4: Guest
Exercise 10-5: Guest Book
Exceptions
Handling the ZeroDivisionError Exception
Using try-except Blocks
Using Exceptions to Prevent Crashes
The else Block
Handling the FileNotFoundError Exception
Analyzing Text
Working with Multiple Files
Failing Silently
Deciding Which Errors to Report
Exercise 10-6: Addition
Exercise 10-7: Addition Calculator
Exercise 10-8: Cats and Dogs
Exercise 10-9: Silent Cats and Dogs
Exercise 10-10: Common Words
Storing Data
Using json.dumps() and json.loads()
Saving and Reading User-Generated Data
Refactoring
Exercise 10-11: Favorite Number
Exercise 10-12: Favorite Number Remembered
Exercise 10-13: User Dictionary
Exercise 10-14: Verify User
Summary
Chapter 11: Testing Your Code
Installing pytest with pip
Updating pip
Installing pytest
Testing a Function
Unit Tests and Test Cases
A Passing Test
Running a Test
A Failing Test
Responding to a Failed Test
Adding New Tests
Exercise 11-1: City, Country
Exercise 11-2: Population
Testing a Class
A Variety of Assertions
A Class to Test
Testing the AnonymousSurvey Class
Using Fixtures
Exercise 11-3: Employee
Summary
Part II: Projects
Chapter 12: A Ship That Fires Bullets
Planning Your Project
Installing Pygame
Starting the Game Project
Creating a Pygame Window and Responding to User Input
Controlling the Frame Rate
Setting the Background Color
Creating a Settings Class
Adding the Ship Image
Creating the Ship Class
Drawing the Ship to the Screen
Refactoring: The _check_events() and _update_screen() Methods
The _check_events() Method
The _update_screen() Method
Exercise 12-1: Blue Sky
Exercise 12-2: Game Character
Piloting the Ship
Responding to a Keypress
Allowing Continuous Movement
Moving Both Left and Right
Adjusting the Ship’s Speed
Limiting the Ship’s Range
Refactoring _check_events()
Pressing Q to Quit
Running the Game in Fullscreen Mode
A Quick Recap
alien_invasion.py
settings.py
ship.py
Exercise 12-3: Pygame Documentation
Exercise 12-4: Rocket
Exercise 12-5: Keys
Shooting Bullets
Adding the Bullet Settings
Creating the Bullet Class
Storing Bullets in a Group
Firing Bullets
Deleting Old Bullets
Limiting the Number of Bullets
Creating the _update_bullets() Method
Exercise 12-6: Sideways Shooter
Summary
Chapter 13: Aliens!
Reviewing the Project
Creating the First Alien
Creating the Alien Class
Creating an Instance of the Alien
Building the Alien Fleet
Creating a Row of Aliens
Refactoring _create_fleet()
Adding Rows
Exercise 13-1: Stars
Exercise 13-2: Better Stars
Making the Fleet Move
Moving the Aliens Right
Creating Settings for Fleet Direction
Checking Whether an Alien Has Hit the Edge
Dropping the Fleet and Changing Direction
Exercise 13-3: Raindrops
Exercise 13-4: Steady Rain
Shooting Aliens
Detecting Bullet Collisions
Making Larger Bullets for Testing
Repopulating the Fleet
Speeding Up the Bullets
Refactoring _update_bullets()
Exercise 13-5: Sideways Shooter Part 2
Ending the Game
Detecting Alien-Ship Collisions
Responding to Alien-Ship Collisions
Aliens That Reach the Bottom of the Screen
Game Over!
Identifying When Parts of the Game Should Run
Exercise 13-6: Game Over
Summary
Chapter 14: Scoring
Adding the Play Button
Creating a Button Class
Drawing the Button to the Screen
Starting the Game
Resetting the Game
Deactivating the Play Button
Hiding the Mouse Cursor
Exercise 14-1: Press P to Play
Exercise 14-2: Target Practice
Leveling Up
Modifying the Speed Settings
Resetting the Speed
Exercise 14-3: Challenging Target Practice
Exercise 14-4: Difficulty Levels
Scoring
Displaying the Score
Making a Scoreboard
Updating the Score as Aliens Are Shot Down
Resetting the Score
Making Sure to Score All Hits
Increasing Point Values
Rounding the Score
High Scores
Displaying the Level
Displaying the Number of Ships
Exercise 14-5: All-Time High Score
Exercise 14-6: Refactoring
Exercise 14-7: Expanding the Game
Exercise 14-8: Sideways Shooter, Final Version
Summary
Chapter 15: Generating Data
Installing Matplotlib
Plotting a Simple Line Graph
Changing the Label Type and Line Thickness
Correcting the Plot
Using Built-in Styles
Plotting and Styling Individual Points with scatter()
Plotting a Series of Points with scatter()
Calculating Data Automatically
Customizing Tick Labels
Defining Custom Colors
Using a Colormap
Saving Your Plots Automatically
Exercise 15-1. Cubes
Exercise 15-2: Colored Cubes
Random Walks
Creating the RandomWalk Class
Choosing Directions
Plotting the Random Walk
Generating Multiple Random Walks
Styling the Walk
Exercise 15-3: Molecular Motion
Exercise 15-4: Modified Random Walks
Exercise 15-5: Refactoring
Rolling Dice with Plotly
Installing Plotly
Creating the Die Class
Rolling the Die
Analyzing the Results
Making a Histogram
Customizing the Plot
Rolling Two Dice
Further Customizations
Rolling Dice of Different Sizes
Saving Figures
Exercise 15-6: Two D8s
Exercise 15-7: Three Dice
Exercise 15-8: Multiplication
Exercise 15-9: Die Comprehensions
Exercise 15-10: Practicing with Both Libraries
Summary
Chapter 16: Downloading Data
The CSV File Format
Parsing the CSV File Headers
Printing the Headers and Their Positions
Extracting and Reading Data
Plotting Data in a Temperature Chart
The datetime Module
Plotting Dates
Plotting a Longer Timeframe
Plotting a Second Data Series
Shading an Area in the Chart
Error Checking
Downloading Your Own Data
Exercise 16-1: Sitka Rainfall
Exercise 16-2: Sitka–Death Valley Comparison
Exercise 16-3: San Francisco
Exercise 16-4: Automatic Indexes
Exercise 16-5: Explore
Mapping Global Datasets: GeoJSON Format
Downloading Earthquake Data
Examining GeoJSON Data
Making a List of All Earthquakes
Extracting Magnitudes
Extracting Location Data
Building a World Map
Representing Magnitudes
Customizing Marker Colors
Other Color Scales
Adding Hover Text
Exercise 16-6: Refactoring
Exercise 16-7: Automated Title
Exercise 16-8: Recent Earthquakes
Exercise 16-9: World Fires
Summary
Chapter 17: Working with APIs
Using an API
Git and GitHub
Requesting Data Using an API Call
Installing Requests
Processing an API Response
Working with the Response Dictionary
Summarizing the Top Repositories
Monitoring API Rate Limits
Visualizing Repositories Using Plotly
Styling the Chart
Adding Custom Tooltips
Adding Clickable Links
Customizing Marker Colors
More About Plotly and the GitHub API
The Hacker News API
Exercise 17-1: Other Languages
Exercise 17-2: Active Discussions
Exercise 17-3: Testing python_repos.py
Exercise 17-4: Further Exploration
Summary
Chapter 18: Getting Started with Django
Setting Up a Project
Writing a Spec
Creating a Virtual Environment
Activating the Virtual Environment
Installing Django
Creating a Project in Django
Creating the Database
Viewing the Project
Exercise 18-1: New Projects
Starting an App
Defining Models
Activating Models
The Django Admin Site
Defining the Entry Model
Migrating the Entry Model
Registering Entry with the Admin Site
The Django Shell
Exercise 18-2: Short Entries
Exercise 18-3: The Django API
Exercise 18-4: Pizzeria
Making Pages: The Learning Log Home Page
Mapping a URL
Writing a View
Writing a Template
Exercise 18-5: Meal Planner
Exercise 18-6: Pizzeria Home Page
Building Additional Pages
Template Inheritance
The Topics Page
Individual Topic Pages
Exercise 18-7: Template Documentation
Exercise 18-8: Pizzeria Pages
Summary
Chapter 19: User Accounts
Allowing Users to Enter Data
Adding New Topics
Adding New Entries
Editing Entries
Exercise 19-1: Blog
Setting Up User Accounts
The accounts App
The Login Page
Logging Out
The Registration Page
Exercise 19-2: Blog Accounts
Allowing Users to Own Their Data
Restricting Access with @login_required
Connecting Data to Certain Users
Restricting Topics Access to Appropriate Users
Protecting a User’s Topics
Protecting the edit_entry Page
Associating New Topics with the Current User
Exercise 19-3: Refactoring
Exercise 19-4: Protecting new_entry
Exercise 19-5: Protected Blog
Summary
Chapter 20: Styling and Deploying an App
Styling Learning Log
The django-bootstrap5 App
Using Bootstrap to Style Learning Log
Modifying base.html
Styling the Home Page Using a Jumbotron
Styling the Login Page
Styling the Topics Page
Styling the Entries on the Topic Page
Exercise 20-1: Other Forms
Exercise 20-2: Stylish Blog
Deploying Learning Log
Making a Platform.sh Account
Installing the Platform.sh CLI
Installing platformshconfig
Creating a requirements.txt File
Additional Deployment Requirements
Adding Configuration Files
Modifying settings.py for Platform.sh
Using Git to Track the Project’s Files
Creating a Project on Platform.sh
Pushing to Platform.sh
Viewing the Live Project
Refining the Platform.sh Deployment
Creating Custom Error Pages
Ongoing Development
Deleting a Project on Platform.sh
Exercise 20-3: Live Blog
Exercise 20-4: Extended Learning Log
Summary
Appendix A: Installation and Troubleshooting
Python on Windows
Using py Instead of python
Rerunning the Installer
Python on macOS
Accidentally Installing Apple’s Version of Python
Python 2 on Older Versions of macOS
Python on Linux
Using the Default Python Installation
Installing the Latest Version of Python
Checking Which Version of Python You’re Using
Python Keywords and Built-in Functions
Python Keywords
Python Built-in Functions
Appendix B: Text Editors and IDEs
Working Efficiently with VS Code
Configuring VS Code
VS Code Shortcuts
Other Text Editors and IDEs
IDLE
Geany
Sublime Text
Emacs and Vim
PyCharm
Jupyter Notebooks
Appendix C: Getting Help
First Steps
Try It Again
Take a Break
Refer to This Book’s Resources
Searching Online
Stack Overflow
The Official Python Documentation
Official Library Documentation
r/learnpython
Blog Posts
Discord
Slack
Appendix D: Using Git for Version Control
Installing Git
Configuring Git
Making a Project
Ignoring Files
Initializing a Repository
Checking the Status
Adding Files to the Repository
Making a Commit
Checking the Log
The Second Commit
Abandoning Changes
Checking Out Previous Commits
Deleting the Repository
Appendix E: Troubleshooting Deployments
Understanding Deployments
Basic Troubleshooting
Follow Onscreen Suggestions
Read the Log Output
OS-Specific Troubleshooting
Deploying from Windows
Deploying from macOS
Deploying from Linux
Other Deployment Approaches
Index
Resources
Back Cover
Citation preview
JNNC Technologies PYTHON CRASH COURSE “It has been interesting to see No Starch Press producing future classics that should be alongside the more traditional programming .
Python Crash Course in Vizag JNNC Technologies is one of those Blogs “Deals with some rather complex projects and lays them out in a consistent, logical, and pleasant manner that draws the reader into the subject.” —F ull Circle M agazine “Well presented with good explanations of the code snippets.
“Learning Python with Python Crash Course was an extremely positive experience! A great choice if you’re new to Python.” —Mikke Goes Coding “Does what it says on the tin, and does it really well. . . . Presents a large number of useful exercises as well as three challenging and entertaining projects.”
“A fast-paced but comprehensive introduction to programming with Python, Python Crash Course is another superb book to add to your library and help you finally master Python. Python Crash Course in Vizag
A brilliant option for complete beginners without any coding experience. If you’re looking for a solid, uncomplicated intro to this very deep language, I have to Contains literally everything you need to know about Python and even more.
”While Python Crash Course uses Python to teach you to code, it also teaches clean programming skills that apply to most other languages.”
1 G E T T I N G S TA R T E D
In this chapter, you’ll run your first Python program, hello_world.py. First, you’ll need to check whether a recent version of Python is installed on your computer; if it isn’t, you’ll install it. You’ll also install a text editor to work with your Python programs.
Text editors recognize Python code and highlight sections as you write, making it easy to understand your code’s structure. Setting Up Your Programming Environment Python differs slightly on different operating systems, so you’ll need to keep a few considerations in mind. In the following sections, we’ll make sure Python is set up correctly on your system. Python Crash Course in Vizag
Python Versions Every programming language evolves as new ideas and technologies emerge, and the developers of Python have continually made the language more versatile and powerful. As of this writing, the latest version is Python 3.11, but everything in this book should run on Python 3.9 or later.
In this section, we’ll find out if Python is already installed on your system and whether you need to install a newer version. Appendix A contains additional details about installing the latest version of Python on each major operating system as well. Python Crash Course in Vizag
Running Snippets of Python Code You can run Python’s interpreter in a terminal window, allowing you to try bits of Python code without having to save and run an entire program. Throughout this book, you’ll see code snippets that look like this: >>> print(“Hello Python interpreter!”) Hello Python interpreter!
The three angle brackets (>>>) prompt, which we’ll refer to as a Python prompt, indicates that you should be using the terminal window. The bold text is the code you should type in and then execute by pressing ENTER. Python Crash Course in Vizag
Most of the examples in this book are small, self-contained programs that you’ll run from your text editor rather than the terminal, because you’ll write most of your code in the text editor. But sometimes, basic concepts will be shown in a series of snippets run through a Python terminal session to demonstrate particular concepts more efficiently. When you see three angle brackets in a code listing, you’re looking at code and output from a terminal session.
We’ll try coding in the interpreter on your system in a moment. We’ll also use a text editor to create a simple program called Hello World! that has become a staple of learning to program. Python Crash Course in Vizag
There’s a long-held tradition in the programming world that printing the message Hello world! to the screen as your first program in a new language will bring you good luck. Such a simple program serves a very real purpose. If it runs correctly on your system, then any Python program you write should work as well.
About the VS Code Editor VS Code is a powerful, professional-quality text editor that’s free and beginnerfriendly. VS Code is great for both simple and complex projects, so if you become comfortable using it while learning Python, you can continue using it as you progress to larger and more complicated projects. VS Code can be installed on all modern operating systems, and it supports most programming languages, including Python. Appendix B provides information on other text editors. If you’re curious about the other options, you might want to skim that appendix at this
4 Chapter 1
If you want to begin programming quickly, you can use VS Code to start. Then you can consider other editors, once you’ve gained some experience as a programmer. In this chapter, I’ll walk you through installing VS Code on your operating system. NOTE
If you already have a text editor installed and you know how to configure it to run Python programs, you are welcome to use that editor instead.
Python on Different Operating Systems Python is a cross-platform programming language, which means it runs on all the major operating systems. Any Python program you write should run on any modern computer that has Python installed. Python Crash Course in Vizag
However, the methods for setting up Python on different operating systems vary slightly. In this section, you’ll learn how to set up Python on your system. You’ll first check whether a recent version of Python is installed on your system, and install it if it’s not. Then you’ll install VS Code.
These are the only two steps that are different for each operating system. In the sections that follow, you’ll run hello_world.py and troubleshoot anything that doesn’t work. I’ll walk you through this process for each operating system, so you’ll have a Python programming environment that you can rely on.
Python on Windows Windows doesn’t usually come with Python, so you’ll probably need to install it and then install VS Code. Installing Python First, check whether Python is installed on your system. Python Crash Course in Vizag
Open a command window by entering command into the Start menu and clicking the Command Prompt app. In the terminal window, enter python in lowercase. If you get a Python prompt (>>>) in response, Python is installed on your system.
If you see an error message telling you that python is not a recognized command, or if the Microsoft store opens, Python isn’t installed. Close the Microsoft store if it opens; it’s better to download an official installer than to use Microsoft’s version.
If Python is not installed on your system, or if you see a version earlier than Python 3.9, you need to download a Python installer for Windows. You should see a button for downloading the latest version of Python.
Click the button, which should automatically start downloading the correct installer for your system. After you’ve downloaded the file, run the installer. Make sure you select the option Add Python to PATH, which will make it easier to configure your system correctly. Figure 1-1 shows this option selected.
Getting Started 5
Figure 1-1: Make sure you select the checkbox labeled Add Python to PATH.
Running Python in a Terminal Session Open a new command window and enter python in lowercase. You should see a Python prompt (>>>), which means Windows has found the version of Python you just installed. C:\> python Python 3.x.x (main, Jun . . . , 13:29:14) [MSC v.1932 64 bit (AMD64)] on win32 Type “help”, “copyright”, “credits” or “license” for more information. >>>
NOTE
If you don’t see this output or something similar, see the more detailed setup instructions in Appendix A. Enter the following line in your Python session: >>> print(“Hello Python interpreter!”) Hello Python interpreter! >>>
You should see the output Hello Python interpreter! Anytime you want to run a snippet of Python code, open a command window and start a Python terminal session. To close the terminal session, press CTRL-Z and then press ENTER, or enter the command exit(). Python Crash Course in Vizag
Installing VS Code You can download an installer for VS Click the Download for Windows button and run the installer. Skip the following sections about macOS and Linux, and follow the steps in “Running a Hello World Program”.