Python is the most frequently used programming languages for Machine Learning, Data Science and Analytics and even Web Development.
This post lists 10 + 1 bonus Python code snippets which will assist with common and everyday problems. Also, these code snippets are only a single line!
- Variable Swapping
- Select a Random Element
- Remove Duplicates in a List
- Find All Indices of an Element in a List
- Display the Current Date and Time in String Format
- Filter a List
- One Line Dictionary from List
- String to Integer
- Flatten a list
- Load file in a list
One of the most common problems that we face each day is how to swap two variables. Algorithms and data structures have taught us that we need a third temporary variable in order to swap two variables. However this is not needed in Python:
# Instead of this: tmp = var1 var1 = var2 var2 = tmp # We can do this: var1, var2 = var2, var1
The following code snippet yes depends on a library however it can provide cryptographically secure random choices and a usage for this is for generating a passphrase from a wordlist.
import secrets res = secrets.choice(['cat', 'dog', 'horse', 'car'])
Note: secrets was added in Python 3.6. On older versions of Python you can use the
random.SystemRandom from the random library.
This one liner is used to remove duplicates in a list when the ordering of the elements is not important.
res = list(set([1,1,1,2,3,3,3]))
The following snippet uses list comprehension to return all the indices of the search element instead of just the first occurrence as done by
lst = [1, 2, 3, 'Alice', 'Bob', 'Alice'] res = [i for i in range(len(lst)) if lst[i]=='Alice']
This one liner imports the
datetime library, gets the current date and time and converts it into a string. This can be frequently used to integrate the date and time into various results shown to a user.
import datetime; res = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
List comprehension has become the Pythonic way of filtering a list. Here is the code snippet:
lst= [5,6,7,8,10,20,30] res = [i for i in lst if i > 10]
The following code snippet creates a dictionary with the list indices as key and their elements as values.
lst = ["a", "b", "c", "d"] res = dict(enumerate(lst))
map method we can convert a string list containing numbers into integers. This can be useful when taking input from the user as a string and need to convert it into integer.
lst = ["5", "6", "7", "8", "9"] res = list(map(int, lst))
Machine Learning experts, and Data Scientists frequently deal with multi-dimensional lists and might need to convert these data into one-dimensional. The following one-liner does this without the use of any libraries like
lst = [,,] res = [item for sublist in lst for item in sublist]
The following one liner reads a txt file and adds each line as a new element in a list.
lst = [line.strip() for line in open('input_file.txt', 'r')]
These libraries have saved me tons on time in my development process and can still be categorised as one-liners since just one command is needed for these to work.
This library comes in handy when you need to generate a requirements file. It automatically generates the
requirements.txt file with all the import libraries and versions you are using in your current project only.
Here's how to generate your
pip install pipreqs pipreqs /path/to/project/location
With this library you are able to use all your favorite Python libraries without importing them before. It contains the most popular Python libraries such as
sklearn. The best part of this package is that if you don't use a library, it won't be imported.
Here's how to use Pyforest in your own project
pip install --upgrade pyforest python -m pyforest install_extensions
Then simply add
import pyforest in your project and you are good to go.
THATS ALL! I hope you enjoyed reading this article and found the content helpful 😃.