Many developers have the habit of browsing GitHub regularly. For so many projects on GitHub, some people keep sharing and others keep marking. When everyone browses, they will notice the number of Stars, which represents the popularity of the project. I have taken stock of the 15 most popular open source projects in the Python language on GitHub. I hope it is helpful to you. The ranking is as follows:
1. Machine learning system tensorflow
Google's TensorFlow is one of the most popular open source AI libraries. Its high computing efficiency and rich development resources make it widely used by enterprises and individual developers. TensorFlow is an open source software library for numerical calculations using data flow graphs. TensorFlow was originally developed by researchers and engineers at Google Brain (part of Google's machine intelligence research organization) for research in machine learning and deep neural networks, but the system's versatility makes it applicable to a wide range of other computing applications as well. field.
2. oh-my-zsh
oh-my-zsh is an extension based on the functions of zsh, with convenient plug-in management, theme customization, and beautiful auto-completion Effect. Zsh, like bash, is a Unix shell, but most Linux distributions use bashshell by default. But Zsh has powerful automatic completion of parameters, file names, etc. and powerful custom configuration functions.
3. Command-line HTTP toolkit httpie
HTTPie is a command-line HTTP client that provides command-line interaction to access HTTP services. The goal is to make the CLI's interaction with web services as user-friendly as possible. It provides a simple http command that allows sending arbitrary HTTP requests using simple and natural syntax.
4. Shell command line expansion thefuck
First of all, the name of this project is very eye-catching. The reason why it is named thefuck is that under any circumstances you want to say "fuck", You can use thefuck. theFuck is a highly configurable application, allowing users to turn rules on or off, configure the UI, set rule options, and perform other operations. Fuck's UI is simple. It allows the user to select from a revised command list using the (up and down) arrows, enter to confirm the selection, and Ctrl+C to exit the program. The disadvantage is that there is no way in the Python standard library to read keyboard input without using curses under non-Windows.
5. Micro Python framework Flask
Flask is a micro Python developed Web framework based on the WerkzeugWSGI toolbox and Jinja2 template engine. Flask is licensed under the BSD license. Flask is also called a "microframework" because it uses a simple core and uses extensions to add additional functionality. Flask does not have a default database or form validation tool. However, Flask retains the flexibility of expansion, and you can use Flask-extension to add these functions: ORM, form validation tools, file uploads, and various open authentication technologies.
6. Python Web Framework Django
Django is an open source model-view-controller (MVC) style web application framework driven by the Python programming language. However, in Django, the part of the controller that accepts user input is handled by the framework itself, so Django pays more attention to the model, template (Template) and views (Views), which is called the MTV mode. Using Django, we can create high-quality, easy-to-maintain, database-driven applications in minutes.
7. jQuery-File-Upload
jQueryFileUpload is a jQuery image upload component that supports multi-file upload, cancellation, deletion, thumbnail preview before upload, and list display of image size. Support Upload progress bar display; supports server-side development in various dynamic languages.
8. Python's HTTP client library requests
requests is an HTTP client library in Python, similar to urllib and urllib2, so why use requests instead of urllib2? I thought that Python's standard library urllib2 provides most of the required HTTP functions, but the API is so outrageous that a simple function requires a lot of code. After reading the documentation of requests, it is indeed very simple, especially suitable for lazy people.
9. Computer system configuration manager ansible
Ansible provides the easiest way to publish, manage and orchestrate computer systems, and you can do it in minutes. Ansible is a model-driven configuration manager that supports multi-node publishing and remote task execution. By default, SSH is used for remote connections. There is no need to install additional software on managed nodes and it can be extended using a variety of programming languages.
10. Web crawler framework scrapy
Scrapy is a fast, high-level screen scraping and web scraping framework developed in Python. Users only need to customize and develop a few modules. Easily implement a crawler to crawl web content and various images, which is very convenient. Scrapy is widely used and can be used for data mining, monitoring and automated testing.
The attractive thing about Scrapy is that it is a framework that anyone can easily modify according to their needs. It also provides base classes for various types of crawlers, such as BaseSpider, sitemap crawlers, etc.
11. Python’s machine learning project scikit-learn
scikit-learn is a Python machine learning project. It is a simple and efficient data mining and data analysis tool. Built on NumPy, SciPy and matplotlib. Based on BSD source license. The basic functions of scikit-learn are mainly divided into six parts, classification, regression, clustering, data dimensionality reduction, model selection, and data preprocessing.
12. Neural network library keras
Keras is a minimalist, highly modular neural network library developed in Python (Python2.7-3.5.) and can run on TensorFlow and Theano are both platforms, and good projects aim to achieve rapid development of deep learning. Several major features of keras: complete documentation, quick to get started, written in pure Python, high attention and rapid updates, active forums, but the running speed is not very fast, and some people just don't care about the speed.
13. Web server Tornado
Tornado is a full-stack web framework and asynchronous network library developed using Python. It was first developed by Friendfeed. By using non-blocking IO, Tornado can handle tens of thousands of open connections, making it ideal for longpolling, WebSockets, and other applications that need to maintain long connections for users. Tornado is different from other mainstream web server frameworks (mainly Python frameworks) in that it uses epoll non-blocking IO, has fast response, can handle thousands of concurrent connections, and is especially suitable for real-time web services.
14. Python interpreter CPython
CPython is a Python interpreter implemented in C language. It is also the official and most widely used Python interpreter. In addition to CPython, there are also Jython implemented in JAVA and IronPython implemented in .NET, making Python easily integrated with JAVA programs and .NET programs. There are also some experimental Python interpreters such as PyPy.
CPython is an interpreter that uses bytecode. Any program source code must be compiled into bytecode before execution. It also has external function interfaces for interacting with several other languages, including C.
15. Toolkit CNTK
The efficiency of the CNTK toolkit from Microsoft is "crazier than we have ever seen." This is partly due to CNTK's ability to leverage graphics processing units (GPUs), with Microsoft claiming to be the only company to disclose "scalable GPU" capabilities. (From one on a single machine to multiple on a supercomputer) After matching with the company's networked GPU system (called AzureGPULab), it will be able to train deep neural networks to recognize speech, allowing the Cortana virtual assistant to The speed is ten times faster than before. In April last year, CNTK was already open to researchers, but the open source license at that time was quite restrictive. But now, it's wide open, and deep learning startups will benefit the most.
The above is my inventory of the 15 most popular open source projects in the Python language on GitHub.
Hope this helps everyone! Please recommend some excellent Python open source projects for learning?