Python logo

Python

A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.
244.9K
199.9K
+ 1
6.9K

What is Python?

Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
Python is a tool in the Languages category of a tech stack.
Python is an open source tool with 63.9K GitHub stars and 30.6K GitHub forks. Here’s a link to Python's open source repository on GitHub

Who uses Python?

Companies
9131 companies reportedly use Python in their tech stacks, including Uber, Pinterest, and Google.

Developers
213407 developers on StackShare have stated that they use Python.

Python Integrations

Django, PyCharm, Sentry, CircleCI, and Datadog are some of the popular tools that integrate with Python. Here's a list of all 701 tools that integrate with Python.
Pros of Python
1.2K
Great libraries
962
Readable code
847
Beautiful code
788
Rapid development
690
Large community
438
Open source
393
Elegant
282
Great community
272
Object oriented
220
Dynamic typing
77
Great standard library
60
Very fast
55
Functional programming
49
Easy to learn
45
Scientific computing
35
Great documentation
29
Productivity
28
Easy to read
28
Matlab alternative
24
Simple is better than complex
20
It's the way I think
19
Imperative
18
Free
18
Very programmer and non-programmer friendly
17
Powerfull language
17
Machine learning support
16
Fast and simple
14
Scripting
12
Explicit is better than implicit
11
Ease of development
10
Clear and easy and powerfull
9
Unlimited power
8
It's lean and fun to code
8
Import antigravity
7
Print "life is short, use python"
7
Python has great libraries for data processing
6
Although practicality beats purity
6
Now is better than never
6
Great for tooling
6
Readability counts
6
Rapid Prototyping
6
I love snakes
6
Flat is better than nested
6
Fast coding and good for competitions
6
There should be one-- and preferably only one --obvious
6
High Documented language
5
Great for analytics
5
Lists, tuples, dictionaries
4
Easy to learn and use
4
Simple and easy to learn
4
Easy to setup and run smooth
4
Web scraping
4
CG industry needs
4
Socially engaged community
4
Complex is better than complicated
4
Multiple Inheritence
4
Beautiful is better than ugly
4
Plotting
3
Many types of collections
3
Flexible and easy
3
It is Very easy , simple and will you be love programmi
3
If the implementation is hard to explain, it's a bad id
3
Special cases aren't special enough to break the rules
3
Pip install everything
3
List comprehensions
3
No cruft
3
Generators
3
Import this
3
If the implementation is easy to explain, it may be a g
2
Can understand easily who are new to programming
2
Batteries included
2
Securit
2
Good for hacking
2
Better outcome
2
Only one way to do it
2
Because of Netflix
2
A-to-Z
2
Should START with this but not STICK with This
2
Powerful language for AI
1
Automation friendly
1
Sexy af
1
Slow
1
Procedural programming
0
Ni
0
Powerful
0
Keep it simple
Decisions about Python

Here are some stack decisions, common use cases and reviews by companies and developers who chose Python in their tech stack.

Denys
Software engineer at Typeform · | 13 upvotes · 1.9M views
Shared insights
at
  • Go because it's easy and simple, facilitates collaboration , and also it's fast, scalable, powerful.
  • Visual Studio Code because it has one of the most sophisticated Go language support plugins.
  • Vim because it's Vim
  • Git because it's Git
  • Docker and Docker Compose because it's quick and easy to have reproducible builds/tests with them
  • Arch Linux because Docker for Mac/Win is a disaster for the human nervous system, and Arch is the coolest Linux distro so far
  • Stack Overflow because of Copy-Paste Driven Development
  • JavaScript and Python when a something needs to be coded for yesterday
  • PhpStorm because it saves me like 300 "Ctrl+F" key strokes a minute
  • cURL because terminal all the way
See more
Shared insights

Python helps us automate the tedious and has the gold standard Natural Language Processing library. Python

See more
Benjamin Bernard-Bouissières
Shared insights
at

I really love Django because it is really fast to create a web application from scratch and it has a lot a facilities like the ORM or the Admin module ! The Python language is really easy to read and powerful, that's why I prefer Django over Symfony.

I use Django at work to make tools for the technicians but I also use it for me to build my personal website which I host on PythonAnywhere, and with a domain name bought on Namecheap.

See more
Praveen Mooli
Engineering Manager at Taylor and Francis · | 19 upvotes · 4M views

We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

To build #Webapps we decided to use Angular 2 with RxJS

#Devops - GitHub , Travis CI , Terraform , Docker , Serverless

See more

Context: I wanted to create an end to end IoT data pipeline simulation in Google Cloud IoT Core and other GCP services. I never touched Terraform meaningfully until working on this project, and it's one of the best explorations in my development career. The documentation and syntax is incredibly human-readable and friendly. I'm used to building infrastructure through the google apis via Python , but I'm so glad past Sung did not make that decision. I was tempted to use Google Cloud Deployment Manager, but the templates were a bit convoluted by first impression. I'm glad past Sung did not make this decision either.

Solution: Leveraging Google Cloud Build Google Cloud Run Google Cloud Bigtable Google BigQuery Google Cloud Storage Google Compute Engine along with some other fun tools, I can deploy over 40 GCP resources using Terraform!

Check Out My Architecture: CLICK ME

Check out the GitHub repo attached

See more
Shared insights
at

I'm working as one of the engineering leads in RunaHR. As our platform is a Saas, we thought It'd be good to have an API (We chose Ruby and Rails for this) and a SPA (built with React and Redux ) connected. We started the SPA with Create React App since It's pretty easy to start.

We use Jest as the testing framework and react-testing-library to test React components. In Rails we make tests using RSpec.

Our main database is PostgreSQL, but we also use MongoDB to store some type of data. We started to use Redis  for cache and other time sensitive operations.

We have a couple of extra projects: One is an Employee app built with React Native and the other is an internal back office dashboard built with Next.js for the client and Python in the backend side.

Since we have different frontend apps we have found useful to have Bit to document visual components and utils in JavaScript.

See more

Blog Posts

Sep 29 2020 at 7:36PM

WorkOS

PythonSlackG Suite+17
6
3157
PythonDockerKubernetes+7
3
1157
PythonDockerKubernetes+14
12
2653
Oct 3 2019 at 7:13PM

Ably Realtime

JavaScriptPythonNode.js+8
5
3888
Aug 28 2019 at 3:10AM

Segment

PythonJavaAmazon S3+16
7
2624
JavaScriptPythonPubNub+4
7
1579

Python Alternatives & Comparisons

What are some alternatives to Python?
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
R Language
R provides a wide variety of statistical (linear and nonlinear modelling, classical statistical tests, time-series analysis, classification, clustering, ...) and graphical techniques, and is highly extensible.
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Scala
Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
Anaconda
A free and open-source distribution of the Python and R programming languages for scientific computing, that aims to simplify package management and deployment. Package versions are managed by the package management system conda.
See all alternatives

Python's Followers
199917 developers follow Python to keep up with related blogs and decisions.