Python 3 Strings - Slices

Python 3: From Scratch to Intermediate BEGINNER LEVEL: Python 3 - Strings
7 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€93.98
List Price:  €131.57
You save:  €37.59
£80.28
List Price:  £112.40
You save:  £32.11
CA$138.08
List Price:  CA$193.32
You save:  CA$55.23
A$155.74
List Price:  A$218.04
You save:  A$62.30
S$136.25
List Price:  S$190.76
You save:  S$54.50
HK$782.98
List Price:  HK$1,096.21
You save:  HK$313.22
CHF 91.14
List Price:  CHF 127.60
You save:  CHF 36.46
NOK kr1,098.40
List Price:  NOK kr1,537.80
You save:  NOK kr439.40
DKK kr701.21
List Price:  DKK kr981.73
You save:  DKK kr280.51
NZ$169.22
List Price:  NZ$236.92
You save:  NZ$67.69
د.إ367.20
List Price:  د.إ514.09
You save:  د.إ146.89
৳10,977.89
List Price:  ৳15,369.49
You save:  ৳4,391.59
₹8,365.11
List Price:  ₹11,711.49
You save:  ₹3,346.38
RM479.10
List Price:  RM670.76
You save:  RM191.66
₦120,104.65
List Price:  ₦168,151.32
You save:  ₦48,046.66
₨27,833.48
List Price:  ₨38,967.99
You save:  ₨11,134.50
฿3,681.88
List Price:  ฿5,154.78
You save:  ฿1,472.90
₺3,251.57
List Price:  ₺4,552.33
You save:  ₺1,300.75
B$528.60
List Price:  B$740.07
You save:  B$211.46
R1,902.92
List Price:  R2,664.17
You save:  R761.24
Лв183.76
List Price:  Лв257.28
You save:  Лв73.51
₩138,255.79
List Price:  ₩193,563.64
You save:  ₩55,307.85
₪376.37
List Price:  ₪526.94
You save:  ₪150.56
₱5,722.47
List Price:  ₱8,011.69
You save:  ₱2,289.21
¥15,461.20
List Price:  ¥21,646.30
You save:  ¥6,185.10
MX$1,698.40
List Price:  MX$2,377.83
You save:  MX$679.43
QR364.94
List Price:  QR510.94
You save:  QR145.99
P1,382.56
List Price:  P1,935.64
You save:  P553.08
KSh13,248.67
List Price:  KSh18,548.67
You save:  KSh5,300
E£4,879.07
List Price:  E£6,830.89
You save:  E£1,951.82
ብር5,691.67
List Price:  ብር7,968.56
You save:  ብር2,276.89
Kz83,741.62
List Price:  Kz117,241.62
You save:  Kz33,500
CLP$98,036.19
List Price:  CLP$137,254.59
You save:  CLP$39,218.40
CN¥723.78
List Price:  CN¥1,013.33
You save:  CN¥289.54
RD$5,909.81
List Price:  RD$8,273.97
You save:  RD$2,364.16
DA13,475.51
List Price:  DA18,866.26
You save:  DA5,390.74
FJ$227.51
List Price:  FJ$318.52
You save:  FJ$91.01
Q778.01
List Price:  Q1,089.25
You save:  Q311.23
GY$20,943.86
List Price:  GY$29,322.24
You save:  GY$8,378.38
ISK kr14,144.58
List Price:  ISK kr19,802.98
You save:  ISK kr5,658.40
DH1,017.39
List Price:  DH1,424.39
You save:  DH407
L1,786.82
List Price:  L2,501.62
You save:  L714.80
ден5,782.34
List Price:  ден8,095.50
You save:  ден2,313.16
MOP$806.92
List Price:  MOP$1,129.72
You save:  MOP$322.80
N$1,901.80
List Price:  N$2,662.60
You save:  N$760.80
C$3,681.76
List Price:  C$5,154.62
You save:  C$1,472.85
रु13,382.26
List Price:  रु18,735.71
You save:  रु5,353.44
S/373.93
List Price:  S/523.52
You save:  S/149.59
K378.80
List Price:  K530.34
You save:  K151.53
SAR375.07
List Price:  SAR525.11
You save:  SAR150.04
ZK2,508.25
List Price:  ZK3,511.66
You save:  ZK1,003.40
L467.60
List Price:  L654.66
You save:  L187.05
Kč2,369.93
List Price:  Kč3,318
You save:  Kč948.06
Ft36,898.16
List Price:  Ft51,658.91
You save:  Ft14,760.74
SEK kr1,094.62
List Price:  SEK kr1,532.51
You save:  SEK kr437.89
ARS$86,865.91
List Price:  ARS$121,615.75
You save:  ARS$34,749.84
Bs693.67
List Price:  Bs971.16
You save:  Bs277.49
COP$390,802.63
List Price:  COP$547,139.32
You save:  COP$156,336.68
₡50,098.77
List Price:  ₡70,140.28
You save:  ₡20,041.51
L2,469.54
List Price:  L3,457.46
You save:  L987.91
₲740,758.16
List Price:  ₲1,037,091.06
You save:  ₲296,332.90
$U3,889.78
List Price:  $U5,445.86
You save:  $U1,556.07
zł408.85
List Price:  zł572.41
You save:  zł163.55
Already have an account? Log In

Transcript

Slices allow us to extract various parts of a string, or a list or any other sequence of elements, leaving the initial string unchanged. The syntax for a string slice is the following. We have the name of the variable pointing to this string, followed by a pair of square brackets. In between the brackets we have a colon, right here. On the left side of the colon, we specify the index at which to start the slicing process, the slice will go up to, but will not include the index specified on the right side of the colon. Let's see some examples to clarify this.

Let's create string one. Again, the meaning of this string is not important, but its structure and complexity will aid in our educational purposes. Okay, this is string one. Let's extract the first IP address in the string. So 10 one 110 dot eight dot nine. The first character in our slice should be one right?

This character is located at index five in the string. So if we count 01234, and indeed, one is positioned at index five. Now the last character in our slides should be nine, which is located at index 14. So we will have to go up to index 15 as the end of the slides, but not include that index. So now let's write down the slides. String one, starting at index five, colon, up through but not including index 15.

By the way, this space right here is optional, so you may or may not include it however you like. I choose to include it for better readability. Let's hit Enter. And indeed it returns the IP address we want to extract. If we would have gone up to index 14 only. Then we would have had just 10 dot 110 dot eight dot returned without The Nine at the end, which was an incomplete IP address and an incorrect result.

Let's check this by the way, and indeed, the IP address is incomplete. Now what if we don't specify the second index inside the brackets, well, then the string slice would start at the index given before the colon, and would end at the end of the string. So this way, we will get the rest of the string starting from the character at index five, all the way up to the end. Let's test this as well. So let's remove the second index. And this returns the expected slice.

Now what if we only use the second index, the one after the colon, but don't specify the first index, and then the slice would simply start at the beginning of string one, and would go up to but not including the character as the index we enter after the colon. So let's try this. Let's say string one, no index before the colon, and the second index would be 10. Let's say And indeed, it returns the expected slides starting at the beginning of the string up to but not including the element at index 10. That is correct again. Another question might be, what if we don't enter any indexes at all?

Well, as you might expect, the entire string will be returned with no changes whatsoever. So let's try this as well. And indeed, it returns the entire string as expected. Now, what about negative indexes? We mentioned them in the first lecture about strings. But now let's try extracting a couple of slices using negative values for the indexes.

So string one of minus one will return the last character in our string, which is indeed to string one of minus two should return the next character when reading from right to left. So that would be tea. What if we want to extract a slice containing the Ethernet substring For example, this time using negative indexes, well, we can count from right to left starting at index minus one, and then see what index is corresponds to the first and the last letters of Ethernet. So that would be capital E, and this T right here, let's count character ti has the index minus two, and character e at the beginning of Ethernet would have the index minus 345678, and nine, now we can write our slice. So string one starting at index minus nine, up to but not including index minus one. And indeed, we have extracted our substring.

Now what if we wants to obtain the last five characters of this string? How can we do that? So we want our slides to start at the fifth character when counting from right to left. This means we have to use index minus five as the first index Then go all the way to the end of the string. That's why there's no need to specify a second index, just like earlier when we were dealing with positive indexes. So let's try this string one, starting at minus five, all the way up to the end of the string, indeed returns the last five characters of the string.

What if we want to slice string one starting at the beginning of the string, and leave out the last five characters, then we should skip the first index, since its absence means start from the first character, and then go up to but not including index minus five. So the character at index minus six will be the last character we will include in our slice. Let's test this. So we will have to move minus five to the right of the colon. And this slice is indeed returning string one minus the last five characters of the string, which is correct. One more thing about slices you can specify a third element within the square brackets after The indexes also separated by a colon.

This is called a step. For instance, if you would like to skip every second character of the string, and obtain a new string with these elements removed, you can write the following slice, string one, colon, colon, and two. So we are not specifying any indexes at all, because we want to refer to the entire string. But we are inserting a step after the second colon to skip every second element of the string. And we got an error because the name of the variable I entered was wrong. The result is now the expected one.

Notice that the new string consists of the elements at indexes, 0246, and so on, from the original string. The last thing I'll show you is how to print out the string in reverse order using slices and indexes. For this, we will again use a slice and a step, but what would be the value of that step? Since we want to get the string in reverse order, we should start with the last character of the string, right. So let's try it. That would be string one, colon colon, minus one.

Using this slice we are referring to the entire string starting from the end of the string at index minus one character by character. And this is how you can easily print a string in reversed order. Okay, this should be more than 95% of what you will need for dealing with strings. Keep in mind that these concepts should be practiced and revisited every once in a while since you will use strings, slices and string methods intensively inside your Python applications.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.