888 commands · 53 cheat sheets · 7 subcategories

Python master quick reference — Page 3

Browse 206 commands from 12 focused cheat sheets on page 3 of 5. Each example opens its matching detailed section.

Data and Serialization · 13 commands

Python Regular Expressions Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Compile a patternpattern = re.compile(r'\d{4}-\d{2}-\d{2}')View examples
Search anywherematch = pattern.search(text)View examples
Match from startmatch = pattern.match(text)View examples
Validate the whole stringmatch = pattern.fullmatch(text)View examples
Capture a groupvalue = match.group(1)View examples
Named capturer'(?P<year>\d{4})-(?P<month>\d{2})'View examples
Non-capturing groupr'(?:https?|ftp)://'View examples
Iterate matchesfor match in pattern.finditer(text): print(match.span())View examples
Collect matchesvalues = pattern.findall(text)View examples
Split by patternparts = re.split(r'\s*,\s*', text)View examples
Replace matchesclean = re.sub(r'\s+', ' ', text).strip()View examples
Verbose patternpattern = re.compile(r'''...''', re.VERBOSE)View examples
Ignore casepattern = re.compile(r'error', re.IGNORECASE)View examples

Data and Serialization · 17 commands

Python Text Encoding and Unicode Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Encode UTF-8payload = text.encode('utf-8')View examples
Decode UTF-8text = payload.decode('utf-8')View examples
Use strict decodingtext = payload.decode('utf-8', errors='strict')View examples
Open UTF-8 textwith open(path, 'r', encoding='utf-8') as stream: text = stream.read()View examples
Write stable LF newlineswith open(path, 'w', encoding='utf-8', newline='\n') as stream: stream.write(text)View examples
Wrap a binary streamtext_stream = io.TextIOWrapper(binary_stream, encoding='utf-8', newline='')View examples
Normalize canonical compositionnormalized = unicodedata.normalize('NFC', text)View examples
Check normalizationok = unicodedata.is_normalized('NFC', text)View examples
Build a caseless keykey = unicodedata.normalize('NFC', text).casefold()View examples
Lowercase for presentationlowered = text.lower()View examples
Read a code pointnumber = ord(character)View examples
Create a charactercharacter = chr(number)View examples
Read a Unicode namename = unicodedata.name(character, 'UNNAMED')View examples
Replace malformed inputtext = payload.decode('utf-8', errors='replace')View examples
Preserve OS bytestext = payload.decode(filesystem_encoding, errors='surrogateescape')View examples
Create a streaming decoderdecoder = codecs.getincrementaldecoder('utf-8')(errors='strict')View examples
Finish a decode streamtail = decoder.decode(b'', final=True)View examples

Data and Serialization · 20 commands

Python XML Parsing and Generation Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Parse an XML valueroot = ET.fromstring(xml_bytes)View examples
Parse an XML filetree = ET.parse(path)View examples
Catch malformed XMLexcept ET.ParseError as error: report(error.position)View examples
Create an expanded nametag = '{urn:books}title'View examples
Query with a prefix mapitems = root.findall('b:item', {'b': 'urn:books'})View examples
Choose a serialization prefixET.register_namespace('b', 'urn:books')View examples
Find one matching elementitem = root.find('./item[@id="a"]')View examples
Find matching elementsitems = root.findall('.//item')View examples
Iterate matching descendantsfor item in root.iter('item'): consume(item)View examples
Append a child elementchild = ET.SubElement(parent, 'item', {'id': item_id})View examples
Set element textchild.text = valueView examples
Remove a childparent.remove(child)View examples
Serialize to textxml_text = ET.tostring(root, encoding='unicode')View examples
Write UTF-8 XMLtree.write(path, encoding='utf-8', xml_declaration=True)View examples
Canonicalize XMLcanonical = ET.canonicalize(xml_data=xml_text)View examples
Iterate completed elementsevents = ET.iterparse(source, events=('end',))View examples
Release processed contentelement.clear()View examples
Create a pull parserparser = ET.XMLPullParser(events=('start', 'end'))View examples
Inspect the Expat versionversion = pyexpat.EXPAT_VERSIONView examples
Bound XML input bytesif len(xml_bytes) > MAX_XML_BYTES: raise ValueError('XML too large')View examples

Pandas Data Analysis · 15 commands

Pandas Data Cleaning and Missing Data Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Count missing valuesmissing = df.isna().sum()View examples
Select complete rowscomplete = df.loc[df[['id', 'email']].notna().all(axis='columns')]View examples
Drop incomplete recordsclean = df.dropna(subset=['customer_id', 'ordered_at'])View examples
Fill column defaultsclean = df.fillna({'country': 'unknown', 'quantity': 0})View examples
Forward-fill brieflydf['status'] = df['status'].ffill(limit=1)View examples
Interpolate numeric gapsdf['reading'] = df['reading'].interpolate(limit_area='inside')View examples
Replace sentinelsdf['status'] = df['status'].replace({'N/A': pd.NA, '': pd.NA})View examples
Normalize textdf['email'] = df['email'].str.strip().str.lower()View examples
Normalize categoriesdf['status'] = df['status'].replace({'in progress': 'active', 'open': 'active'})View examples
Parse numeric valuesdf['amount'] = pd.to_numeric(df['amount'], errors='coerce')View examples
Parse exact datesdf['ordered_at'] = pd.to_datetime(df['ordered_at'], format='%Y-%m-%d', errors='coerce')View examples
Use nullable dtypesdf = df.convert_dtypes()View examples
Find values out of rangeinvalid = df.loc[df['quantity'].notna() & ~df['quantity'].between(1, 100)]View examples
Find duplicate keysduplicates = df.loc[df.duplicated('order_id', keep=False)]View examples
Keep the latest recordlatest = df.sort_values('updated_at').drop_duplicates('order_id', keep='last')View examples

Pandas Data Analysis · 16 commands

Pandas DataFrames and Indexing Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Create a DataFramedf = pd.DataFrame({'name': ['Ada', 'Lin'], 'score': [91, 84]})View examples
Read CSV datadf = pd.read_csv('scores.csv', usecols=['name', 'score'])View examples
Preview rowspreview = df.head(3)View examples
Inspect column typestypes = df.dtypesView examples
Select one columnscores = df['score']View examples
Select by labelsresult = df.loc[df.index[:2], ['name', 'score']]View examples
Select by positionresult = df.iloc[:2, [0, 2]]View examples
Filter with a maskhigh_scores = df.loc[df['score'].ge(90)]View examples
Match allowed valuesselected = df.loc[df['team'].isin({'red', 'blue'})]View examples
Query rowsselected = df.query('score >= @minimum and active')View examples
Update matching rowsdf.loc[df['score'].ge(90), 'level'] = 'advanced'View examples
Create a derived columnresult = df.assign(percent=lambda frame: frame['score'] / frame['possible'] * 100)View examples
Rename columnsresult = df.rename(columns={'score': 'points'})View examples
Sort rowsresult = df.sort_values(['team', 'score'], ascending=[True, False])View examples
Set an indexindexed = df.set_index('student_id', verify_integrity=True)View examples
Restore a column indexflat = indexed.reset_index()View examples

Pandas Data Analysis · 15 commands

Pandas GroupBy, Aggregation, and Reshaping Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Sum by grouptotals = df.groupby('region')['revenue'].sum()View examples
Keep group columnstotals = df.groupby('region', as_index=False)['revenue'].sum()View examples
Group by several keystotals = df.groupby(['region', 'product'], as_index=False)['revenue'].sum()View examples
Name aggregate columnssummary = df.groupby('region').agg(total=('revenue', 'sum'), average=('revenue', 'mean'))View examples
Count group rowscounts = df.groupby('region').size()View examples
Count present valuescounts = df.groupby('region')['revenue'].count()View examples
Broadcast group totalsdf['region_total'] = df.groupby('region')['revenue'].transform('sum')View examples
Calculate group sharedf['share'] = df['revenue'] / df.groupby('region')['revenue'].transform('sum')View examples
Calculate grouped running totalsdf['running'] = df.groupby('account')['amount'].cumsum()View examples
Keep qualifying groupsresult = df.groupby('region').filter(lambda group: len(group) >= 2)View examples
Pivot unique coordinateswide = df.pivot(index='date', columns='metric', values='value')View examples
Aggregate a pivot tablewide = df.pivot_table(index='region', columns='product', values='revenue', aggfunc='sum', fill_value=0)View examples
Unpivot wide columnslong = df.melt(id_vars='id', var_name='metric', value_name='value')View examples
Explode list valueslong = df.explode('tags', ignore_index=True)View examples
Build a cross-tabulationcounts = pd.crosstab(df['region'], df['status'], margins=True)View examples

Pandas Data Analysis · 14 commands

Pandas Merging, Joining, and Concatenation Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Keep matching keysresult = orders.merge(customers, on='customer_id', how='inner')View examples
Preserve left rowsresult = orders.merge(customers, on='customer_id', how='left')View examples
Join different key namesresult = orders.merge(customers, left_on='customer_id', right_on='id', how='left')View examples
Validate key cardinalityresult = orders.merge(customers, on='customer_id', validate='many_to_one')View examples
Track row provenanceaudit = left.merge(right, on='id', how='outer', indicator=True)View examples
Label overlapping columnsresult = current.merge(previous, on='id', suffixes=('_current', '_previous'))View examples
Stack row batchescombined = pd.concat([january, february], ignore_index=True)View examples
Require identical columnscombined = pd.concat(frames, join='inner', ignore_index=True)View examples
Align columns by indexcombined = pd.concat([features, targets], axis='columns')View examples
Preserve batch identitycombined = pd.concat({'jan': january, 'feb': february}, names=['month'])View examples
Join on indexesresult = customers.join(accounts, how='left', validate='one_to_one')View examples
Fill from a fallbackcombined = primary.combine_first(fallback)View examples
Match the nearest prior keyresult = pd.merge_asof(events, rates, on='time', direction='backward')View examples
Show changed valueschanges = before.compare(after, result_names=('before', 'after'))View examples

Pandas Data Analysis · 16 commands

Pandas Time Series, Resampling, and Rolling Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Parse exact timestampsdf['time'] = pd.to_datetime(df['time'], format='%Y-%m-%d %H:%M', errors='raise')View examples
Normalize to UTCdf['time'] = pd.to_datetime(df['time'], utc=True, errors='coerce')View examples
Create a regular indexindex = pd.date_range('2026-08-01', periods=24, freq='h', tz='UTC')View examples
Set a sorted time indexseries = df.set_index('time').sort_index()View examples
Extract time componentsdf['weekday'] = df['time'].dt.day_name()View examples
Localize wall timeslocalized = naive.dt.tz_localize('America/Sao_Paulo', ambiguous='raise', nonexistent='raise')View examples
Convert time zoneslocal = utc.dt.tz_convert('America/Sao_Paulo')View examples
Aggregate daily totalsdaily = series.resample('D').sum(min_count=1)View examples
Control interval edgesdaily = series.resample('D', closed='right', label='right').sum()View examples
Expose missing intervalshourly = series.asfreq('h')View examples
Interpolate by timehourly = series.resample('h').asfreq().interpolate(method='time', limit_area='inside')View examples
Calculate a rolling meanresult = series.rolling('3h', min_periods=2).mean()View examples
Calculate an expanding totalresult = series.expanding(min_periods=1).sum()View examples
Calculate an EWM meanresult = series.ewm(span=3, adjust=False).mean()View examples
Create a one-period lagdf['previous'] = df['value'].shift(1)View examples
Calculate fractional changedf['change'] = df['value'].pct_change(fill_method=None)View examples

Files, OS, and CLI · 22 commands

Python argparse Command-Line Interfaces Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Create a parserparser = argparse.ArgumentParser(prog='tool', description='Process records')View examples
Add a positionalparser.add_argument('input', help='input path')View examples
Add an optionparser.add_argument('-o', '--output', default='-')View examples
Parse an explicit listargs = parser.parse_args(['input.csv', '--output', 'result.json'])View examples
Convert a valueparser.add_argument('--limit', type=int, default=100)View examples
Restrict choicesparser.add_argument('--format', choices=('json', 'csv'))View examples
Add positive and negative flagsparser.add_argument('--cache', action=argparse.BooleanOptionalAction, default=True)View examples
Count repeated flagsparser.add_argument('-v', '--verbose', action='count', default=0)View examples
Require one or more valuesparser.add_argument('files', nargs='+')View examples
Append repeated option valuesparser.add_argument('--tag', action='append', default=[])View examples
Omit an absent attributeparser.add_argument('--token', default=argparse.SUPPRESS)View examples
Set parser-wide defaultsparser.set_defaults(timeout=30, handler=run)View examples
Create required subcommandscommands = parser.add_subparsers(dest='command', required=True)View examples
Declare a subcommandbuild = commands.add_parser('build', help='build artifacts')View examples
Dispatch to a handlerresult = args.handler(args)View examples
Validate with a type functionparser.add_argument('--port', type=parse_port)View examples
Make options mutually exclusivemode = parser.add_mutually_exclusive_group(required=True)View examples
Retain unknown tokensargs, remaining = parser.parse_known_args(argv)View examples
Populate an existing namespaceargs = parser.parse_args(argv, namespace=argparse.Namespace(source='config'))View examples
Render plain helpparser = argparse.ArgumentParser(prog='tool', color=False)View examples
Catch conversion errorsparser = argparse.ArgumentParser(exit_on_error=False)View examples
Generate help texthelp_text = parser.format_help()View examples

Files, OS, and CLI · 19 commands

Python Configuration with tomllib and configparser Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Read a TOML filewith path.open('rb') as file: config = tomllib.load(file)View examples
Read a TOML stringconfig = tomllib.loads(source)View examples
Support older Pythontomllib = importlib.import_module('tomllib' if sys.version_info >= (3, 11) else 'tomli')View examples
Parse exact decimal valuesconfig = tomllib.loads(source, parse_float=Decimal)View examples
Read TOML date-time valuesreleased = config['package']['released']View examples
Catch invalid TOMLexcept tomllib.TOMLDecodeError as error: report(error)View examples
Bound untrusted inputif path.stat().st_size > MAX_CONFIG_BYTES: raise ValueError('configuration too large')View examples
Validate a required valueport = require_port(config['server'].get('port'))View examples
Read available INI filesloaded = parser.read(['defaults.ini', 'local.ini'], encoding='utf-8')View examples
Read INI textparser.read_string(source)View examples
Convert an INI integerworkers = parser.getint('service', 'workers')View examples
Convert an INI booleandebug = parser.getboolean('service', 'debug')View examples
Provide a missing-option fallbacktimeout = parser.getfloat('service', 'timeout', fallback=5.0)View examples
Define shared defaultsparser['DEFAULT'] = {'timeout': '5', 'retries': '2'}View examples
Layer configuration filesparser.read(['base.ini', 'deployment.ini', 'local.ini'], encoding='utf-8')View examples
Disable interpolationparser = ConfigParser(interpolation=None)View examples
Use cross-section interpolationparser = ConfigParser(interpolation=ExtendedInterpolation())View examples
Preserve option-name caseparser.optionxform = strView examples
Serialize INI configurationparser.write(file, space_around_delimiters=True)View examples

Files, OS, and CLI · 19 commands

Python Files and Paths Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Create a path objectconfig = Path('config/settings.json')View examples
Join path segmentsreport = base / 'reports' / 'daily.txt'View examples
Inspect path componentspath.name, path.stem, path.suffix, path.parentView examples
Check existencepath.exists()View examples
Check the path kindpath.is_file(), path.is_dir()View examples
Resolve an absolute pathabsolute = path.resolve()View examples
Create parent directoriesoutput.mkdir(parents=True, exist_ok=True)View examples
List directory entriesfor child in directory.iterdir(): print(child.name)View examples
Match child pathsfor path in directory.glob('*.json'): print(path)View examples
Search recursivelyfor path in directory.rglob('*.py'): print(path)View examples
Read texttext = path.read_text(encoding='utf-8')View examples
Write textpath.write_text(text, encoding='utf-8')View examples
Process lines lazilywith path.open(encoding='utf-8') as file: lines = list(file)View examples
Read bytesdata = path.read_bytes()View examples
Write bytespath.write_bytes(data)View examples
Load JSONdata = json.loads(path.read_text(encoding='utf-8'))View examples
Write readable JSONpath.write_text(json.dumps(data, indent=2) + '\n', encoding='utf-8')View examples
Use a temporary directorywith TemporaryDirectory() as directory: work = Path(directory)View examples
Replace a file atomicallytemporary.replace(destination)View examples

Files, OS, and CLI · 20 commands

Python OS Signals and Process Environment Cheat Sheet

Open full cheat sheet
UseSyntaxExamples
Install a handlerprevious = signal.signal(signal.SIGTERM, handle_shutdown)View examples
Check the main threadis_main = threading.current_thread() is threading.main_thread()View examples
List supported signalssupported = signal.valid_signals()View examples
Request graceful stopdef handler(signum, frame): shutdown.set()View examples
Wait interruptiblyrequested = shutdown.wait(timeout=1.0)View examples
Restore a dispositionsignal.signal(signal.SIGTERM, previous)View examples
Schedule SIGALRMremaining = signal.alarm(seconds)View examples
Schedule a real-time timerprevious = signal.setitimer(signal.ITIMER_REAL, delay, interval)View examples
Block signals in one threadprevious = signal.pthread_sigmask(signal.SIG_BLOCK, signals)View examples
Read with a defaultmode = os.getenv('APP_MODE', 'production')View examples
Require a variabledatabase_url = os.environ['DATABASE_URL']View examples
Copy the environmentenvironment = os.environ.copy()View examples
Set a process variableos.environ['APP_MODE'] = 'test'View examples
Remove a process variableos.environ.pop('APP_MODE', None)View examples
Reload external changesos.reload_environ()View examples
Pass a child environmentsubprocess.run(argv, env=child_env, check=True)View examples
Override selected child valueschild_env = os.environ | {'APP_MODE': 'batch'}View examples
Expand environment syntaxexpanded = os.path.expandvars(template)View examples
Read a bytes environmentraw = os.environb.get(b'KEY')View examples
Check bytes environment supportavailable = os.supports_bytes_environView examples
CMDMEMO TERMINALREAD ONLY