Python for DevOps - Noah Gift

Python for DevOps - Noah Gift

July 10, 2023 | book-notes, book, permanent

Python for DevOps - Noah Gift #

TOC #

Regular Expression #

import re
cc_list = '''Ezra Koenig <ekoenig@vpwk.com>,
            Rostam Batmanglij <rostam@vpwk.com>,
            Chris Tomson <ctomson@vpwk.
            Bobbi Baio <bbaio@vpwk.com'''
r = re.search('[RB]obb[yi]', 'robbi')
print(r)
r = re.search('Chr[a-z][a-z]', cc_list)
print(r.group())
# search vs findall
r = re.search(r'[A-Za-z]+', cc_list) # returns first match
print(r.group())
r = re.findall(r'[A-Za-z]+', cc_list)
print(r)
r =  re.search(r'\w+\@\w+\.\w+', cc_list)
print(r.group())
r =  re.findall(r'\w+\@\w+\.\w+', cc_list)
print(r)
# groups
r =  re.search(r'(\w+)\@(\w+)\.(\w+)', cc_list)
print(r.group())
print(r.group(1))
print(r.group(2))
print(r.group(3))

# named group
# ?P<NAME> in the group definition
r = re.search(r'(?P<name>\w+)\@(?P<SLD>\w+)\.(?P<TLD>\w+)', cc_list)
print(r.group('name'))
print(r.group('SLD'))
print(r.group('TLD'))
__PYTHON_EL_eval("try:\n    with open('/var/folders/jc/kms8fz7j26b8jmc038dt6dcr0000gn/T/babel-Fz8tk7/python-JDGLIY') as __org_babel_python_tmpfile:\n        exec(compile(__org_babel_python_tmpfile.read(), __org_babel_python_tmpfile.name, 'exec'))\nexcept:\n    raise\nfinally:\n    print('

re.sub for Substitution #

# unnamed group substitution
r = re.sub(r'(\w+)\@(\w+)\.(\w+)', r'\g<3>.\g<2>.\g<1>', cc_list)
print(r)

# unnamed group substitution, shortcut
r = re.sub(r'(\w+)\@(\w+)\.(\w+)', r'\3.\2.\1', cc_list)
print(r)

# named group substitution
r = re.sub(r'(?P<name>\w+)\@(?P<SLD>\w+)\.(?P<TLD>\w+)', '\g<TLD>.\g<SLD>.\g<name>', cc_list)
print(r)
__PYTHON_EL_eval("try:\n    with open('/var/folders/jc/kms8fz7j26b8jmc038dt6dcr0000gn/T/babel-Fz8tk7/python-n8nnv3') as __org_babel_python_tmpfile:\n        exec(compile(__org_babel_python_tmpfile.read(), __org_babel_python_tmpfile.name, 'exec'))\nexcept:\n    raise\nfinally:\n    print('

IPython can be used to run Shell Commands #

Operting systems use difference escaped characters for line ending. #

Problem I faced because of this Issue https://www.evernote.com/shard/s226/nl/25312899/a20973fa-42fa-4cea-a523-51b81d4dc8e4?title=command%20line%20-%20/usr/bin/env:%20%E2%80%98python3%5Cr%E2%80%99:%20No%20such%20file%20or%20directory


No notes link to this note

Go to random page

Previous Next