1str = 'codegrepper'
2# str[start:end:step]
3#by default: start = 0, end = len(str), step = 1
4print(str[:]) #codegrepper
5print(str[::]) #codegrepper
6print(str[5:]) #repper
7print(str[:8]) #codegrep
8print(str[::2]) #cdgepr
9print(str[2:8]) #degrep
10print(str[2:8:2]) #dge
11#step < 0 : reverse
12print(str[::-1]) #reppergedoc
13print(str[::-3]) #rpgo
14# str[start:end:-1] means start from the end, go backward and stop at start
15print(str[8:3:-1]) #pperg
1 s = 'Hello'
2 len(s) ## 5
3 ## Chars are numbered starting with 0
4 s[0] ## 'H'
5 s[1] ## 'e'
6 s[4] ## 'o' -- last char is at length-1
7 s[5] ## ERROR, index out of bounds
8
1sentence = 'Python programming is fun.'
2
3result = sentence.index('is fun')
4print("Substring 'is fun':", result)
5
6result = sentence.index('Java')
7print("Substring 'Java':", result)