["python","string","split"]
Why are empty strings returned in split() results?

What is the point of '/segment/segment/'.split('/') returning ['', 'segment', 'segment', '']? Notice the empty elements. If you're splitting on a delimiter that happens to be at position one and at the very end of a string, what extra value does it give you to have the empty string returned from each end?
str.split complements str.join, so "/".join(['', 'segment', 'segment', '']) gets you back the original string. If the empty strings were not there, the first and last '/' would be missing after the join().