alive-progress
more-itertools
alive-progress | more-itertools | |
---|---|---|
6 | 9 | |
5,126 | 3,429 | |
- | 0.8% | |
5.6 | 9.0 | |
about 2 months ago | about 8 hours ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
alive-progress
-
I am a proficient Python coder whose learning has plateaued. Any really useful libraries I should look into learning? Taking recommendations.
And here are some libraries that might pique your interest although they don't strictly answer your question: - tqdm for adding a progress bar on for loops (it comes with useful information like iteration per second and estimated time needed to finish) - alive_progress adds a progress bar like tqdm, but it works even with generators and while loops which I don't think tqdm does. -timebudget, with just a decorator as soon as a function is completed it prints the time taken to execute it - send2trash for sending files to the trash bin instead of permanently deleting them - keyboard for sending keyboard inputs or check if a key is pressed - mouse same as keyboard but with mouse buttons - textract for extracting text from many types of file with a single interface. It supports documents, powerpoint presentations, csv, excels, images, gifs, audio, and many more
- Alive Progress: A new kind of Progress Bar
-
A new kind of Progress Bar for Python
I still have to write about all the 2.0 features, the largest release I'll ever do... 😅 => https://github.com/rsalmei/alive-progress/pull/51
more-itertools
-
I want to learn reading other people code
I'd bet that reading through more-itertools would be a good exercise.
-
Why iter() & next()
check out the code examples in itertools and the source code of more-itertools if you want to see cases where next and iter get used by themselves.
-
Quick way to split and zip a list?
from itertools import islice # Copied from the more-itertools library (MIT license) # https://github.com/more-itertools/more-itertools def batched(iterable, n): "Batch data into lists of length n. The last batch may be shorter." # batched('ABCDEFG', 3) --> ABC DEF G if n < 1: raise ValueError('n must be at least one') it = iter(iterable) while (batch := list(islice(it, n))): yield batch
- more-itertools: More routines for operating on iterables, beyond itertools
-
How do I loop this?
more_itertools.chunked
-
Is there a better way to write this code?
I've had a tab open to more-itertools on github for weeks; maybe I should go read it...
-
Help loading data in batches
The popular more-itertools library implements (among many others) a chunked method which yields lists of size n from an iterator. There is also the ichunked method which yields iterators of size n instead of lists.
-
How to find missing number in groups(lists)
There's a function called consecutive_groups in the more-itertools library that will do this for you efficiently.
-
I am a proficient Python coder whose learning has plateaued. Any really useful libraries I should look into learning? Taking recommendations.
Here are some that might answer your question: - algorithms is a library which contains many of the most useful algorithms for sorting, searching, working with trees, math algorithms like factorials, prime finders and many more - data classes to save you the trouble of writing everytime special methods in a class like init, repr, set, get - box allows the use of dot on dictionaries to access the keys - more-itertools for more routines to operate on iterables than those itertools provide.
What are some alternatives?
tqdm - :zap: A Fast, Extensible Progress Bar for Python and CLI
TheAlgorithms - All Algorithms implemented in Python
rich - Rich is a Python library for rich text and beautiful formatting in the terminal.
python-patterns - A collection of design patterns/idioms in Python
CUTIE - Command line User Tools for Input Easification
sortedcontainers - Python Sorted Container Types: Sorted List, Sorted Dict, and Sorted Set
progressbar - Terminal-based progress bar for Java / JVM
algorithms
enlighten - Enlighten Progress Bar for Python Console Apps
PyPattyrn - A simple library for implementing common design patterns.
PBar - Small python library to display customizable progress bars on the terminal easily.
python-ds - No non-sense and no BS repo for how data structure code should be in Python - simple and elegant.