Skip to content

Instantly share code, notes, and snippets.

@devanlai
Created February 9, 2015 05:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save devanlai/e4f2b55006df10e62234 to your computer and use it in GitHub Desktop.
Save devanlai/e4f2b55006df10e62234 to your computer and use it in GitHub Desktop.
def slice_arg(string):
try:
if ":" in string:
parts = string.split(":")
args = []
for part in parts:
if not part.strip():
args.append(None)
else:
args.append(int(part))
return slice(*args)
else:
index = int(string)
return slice(index, index+1)
except ValueError:
raise argparse.ArgumentTypeError("{} is not a valid slice".format(string))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment