grep a file, but show several surrounding lines?

$grep -C 1 lambda doowli.py 
    request = urllib2.Request(url)
    request.get_method = lambda : 'HEAD'
    try:
$grep -B 1 -A 0 lambda doowli.py 
    request = urllib2.Request(url)
    request.get_method = lambda : 'HEAD'
$grep -B 1 -A 5 lambda doowli.py 
    request = urllib2.Request(url)
    request.get_method = lambda : 'HEAD'
    try:
        response = urllib2.urlopen(request)
        return True
    except urllib2.HTTPError:
        return False
$grep -C 5  lambda doowli.py 
    print " Linux Journal -- Year :", year , "Month:", month
    filename = wget.download(url) 

def file_exists(url):
    request = urllib2.Request(url)
    request.get_method = lambda : 'HEAD'
    try:
        response = urllib2.urlopen(request)
        return True
    except urllib2.HTTPError:
        return False
$

https://beyondgrep.com/