How can I remove a key from a Python dictionary?

To delete a key regardless of whether it is in the dictionary, use the two-argument form of dict.pop(): my_dict.pop(‘key’, None) This will return my_dict[key] if key exists in the dictionary, and None otherwise. If the second parameter is not specified (i.e. my_dict.pop(‘key’)) and key does not exist, a KeyError is raised. To delete a key … Read more

Renaming column names in Pandas

RENAME SPECIFIC COLUMNS Use the df.rename() function and refer the columns to be renamed. Not all the columns have to be renamed: df = df.rename(columns={‘oldName1’: ‘newName1’, ‘oldName2’: ‘newName2’}) # Or rename the existing DataFrame (rather than creating a copy) df.rename(columns={‘oldName1’: ‘newName1’, ‘oldName2’: ‘newName2’}, inplace=True) Minimal Code Example df = pd.DataFrame(‘x’, index=range(3), columns=list(‘abcde’)) df a b … Read more

Find the current directory and file’s directory [duplicate]

To get the full path to the directory a Python file is contained in, write this in that file: import os dir_path = os.path.dirname(os.path.realpath(__file__)) (Note that the incantation above won’t work if you’ve already used os.chdir() to change your current working directory, since the value of the __file__ constant is relative to the current working … Read more

Why is “1000000000000000 in range(1000000000000001)” so fast in Python 3?

The Python 3 range() object doesn’t produce numbers immediately; it is a smart sequence object that produces numbers on demand. All it contains is your start, stop and step values, then as you iterate over the object the next integer is calculated each iteration. The object also implements the object.__contains__ hook, and calculates if your … Read more

Convert string “Jun 1 2005 1:33PM” into datetime

datetime.strptime parses an input string in the user-specified format into a timezone-naive datetime object: >>> from datetime import datetime >>> datetime.strptime(‘Jun 1 2005 1:33PM’, ‘%b %d %Y %I:%M%p’) datetime.datetime(2005, 6, 1, 13, 33) To obtain a date object using an existing datetime object, convert it using .date(): >>> datetime.strptime(‘Jun 1 2005’, ‘%b %d %Y’).date() date(2005, … Read more

How do I access environment variables in Python?

Environment variables are accessed through os.environ: import os print(os.environ[‘HOME’]) To see a list of all environment variables: print(os.environ) If a key is not present, attempting to access it will raise a KeyError. To avoid this: # Returns `None` if key doesn’t exist print(os.environ.get(‘KEY_THAT_MIGHT_EXIST’)) # Returns `default_value` if key doesn’t exist print(os.environ.get(‘KEY_THAT_MIGHT_EXIST’, default_value)) # Returns `default_value` … Read more

How do I print colored text to the terminal?

This somewhat depends on what platform you are on. The most common way to do this is by printing ANSI escape sequences. For a simple example, here’s some Python code from the Blender build scripts: class bcolors: HEADER = ‘\033[95m’ OKBLUE = ‘\033[94m’ OKCYAN = ‘\033[96m’ OKGREEN = ‘\033[92m’ WARNING = ‘\033[93m’ FAIL = ‘\033[91m’ … Read more

How do I split a list into equally-sized chunks?

Here’s a generator that yields evenly-sized chunks: def chunks(lst, n): “””Yield successive n-sized chunks from lst.””” for i in range(0, len(lst), n): yield lst[i:i + n] import pprint pprint.pprint(list(chunks(range(10, 75), 10))) [[10, 11, 12, 13, 14, 15, 16, 17, 18, 19], [20, 21, 22, 23, 24, 25, 26, 27, 28, 29], [30, 31, 32, 33, … Read more