Strings and Character Data in Python
String Slicing
Python also allows a form of indexing syntax that extracts substrings from a string, known as string slicing. If s
is a string, an expression of the form s[m:n]
returns the portion of s
starting with position m
, and up to but not including position n
:
s = 'foobar'
s[2:5]
#'oba'
Remember: String indices are zero-based. The first character in a string has index 0
. This applies to both standard indexing and slicing.
Again, the second index specifies the first character that is not included in the result—the character 'r'
(s[5]
) in the example above. That may seem slightly unintuitive, but it produces this result which makes sense: the expression s[m:n]
will return a substring that is n - m
characters in length, in this case, 5 - 2 = 3
.
If you omit the first index, the slice starts at the beginning of the string. Thus, s[:m]
and s[0:m]
are equivalent:
Similarly, if you omit the second index as in s[n:]
, the slice extends from the first index through the end of the string. This is a nice, concise alternative to the more cumbersome s[n:len(s)]
:
For any string s
and any integer n
(0 ≤ n ≤ len(s)
), s[:n] + s[n:]
will be equal to s
:
If the first index in a slice is greater than or equal to the second index, Python returns an empty string. This is yet another obfuscated way to generate an empty string, in case you were looking for one:
标签:index,slice,String,Python,Slicing,string,first From: https://www.cnblogs.com/chucklu/p/16882828.html