Simply use :
print "a:b:c:d".split(":", 2) # Output ["a", "b", "c:d"]
If the sep is an empty string, split will raise a ValueError.
If the second arg, called maxsplit, is not provided or is smaller or equal to -1, then the output can have any size.
Else, the ouput will have a maximum of maxplit+1elements.
Please note that this is different to PHP, where limit specifies the maximum number of elements.
Also Python doesn't handle negatives maxsplit like in PHP. To do that, use:
print "a:b:c:d".split(":")[:-2] # Output ["a", "b"]
(PHP 4, PHP 5)
explode — Split a string by string
array explode ( string $delimiter , string $string [, int $limit= -1 ] )
Returns an array of strings, each of which is a substring of string formed by splitting it on boundaries formed by the string delimiter .
Although implode() can, for historical reasons, accept its parameters in either order, explode() cannot. You must ensure that the delimiter argument comes before the string argument.
If delimiter is an empty string (""), explode() will return FALSE. If delimiter contains a value that is not contained in string , then explode() will return an array containing string .
Example #1 explode() examples
Example #2 limit parameter examples
The above example will output:
Array (  => one  => two|three|four ) Array (  => one  => two  => three )