Python is a general purpose programming language invented in the 1990s. It is one of the most popular programming languages in the world. If I may illustrate with some analogies, Python is to the world of computing...
what the Cessna 172 is to the world of aviation...
what the piano is to the world of music...
what the AE86 is to the world of motor racing...
...a simple, well-designed, versatile tool that's approachable for beginners but immensely capable in the hands of experts.
If you asked me to guess why Python is so popular, I would say:
its syntax is easy to read and write
it works across a wide variety of platforms (for example: Linux, macOS, Windows, Raspberry Pi, cloud)
there is a huge variety of well-developed, open-source libraries (aka packages) which can extend and customize its standard functionality
The last point is a big one. Whether you are working on a personal or professional project, you will be able to find libraries from all kinds of fields, including:
Robotics and Mechatronics
Data Analysis
Websites and smartphone apps
Math and physics problems
Video Games
Modeling and simulation
Geography
For those who don't have a formal education in software development, I think it's natural to question the validity of embarking down the road of programming. Should this domain be left to those experts who have a college education in computer science or software engineering?
I think it depends. You don't need to be a hardcore software developer in order to create useful or interesting things with code, as long as you respect these principles:
Can you clearly explain what your code is supposed to do?
Is your code laid out in a clear and organized way?
Can you demonstrate with tests that your code does what it's supposed to do?
In flight training, a key point that is hammered in from day one is:
know and respect your personal limits
know and respect your aircraft's limits
I think this point can be applied to all fields of human endeavor, including software development. For the software world, it's true that if you don't have extensive training in the field, you shouldn't expect that after a boot camp in coding you will be up to the task of working on complex software systems that can operate in the real world on thousands of computers.
But at the same time, that doesn't mean that there aren't smaller scale problems that you can effectively work on with some general programming skill. And that is where Python shines. For engineers here are some example scenarios:
your team inherited some VBA-embedded spreadsheets a decade ago and it's not possible to maintain or extend their capabilities any longer → it may be worthwhile rebuilding them into lightweight Python tools
you have an idea for a system but you can't get funding for software development → you may be able to support your case by building a proof-of-concept prototype, which can then be handed off to software developers for industrialization
In the next section, I'll give an overview of the basic Python "parts".