https://excelsior-cjh.tistory.com/119

1. 슬라이싱 결과는 새로운 리스트를 반환한다.

2. list에 새로운 값을 할당할 경우 슬라이스 할당의 길이는 달라도 된다.


# list에 새로운 값을 할당할 경우 슬라이스 할당의 길이는 달라도 된다.
# list는 새로 들어온 값에 맞춰 늘어나거나 줄어들기 때문이다.
print('Before:   ', a)
a[2:7] = [99, 22, 14]
print('After:    ', a)
 
'''출력결과
						 0    1  [ 2    3    4    5    6 ]   7
Before:    ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
After:     ['a', 'b', 99, 22, 14, 'h']
''

3. 슬라이싱은 out of range가 생기지 않는다.

4. 슬라이싱 활용한 문자열 역순

x = b'mongoose'

y = x[::-1]

4-1 utf-8에서는 error가 난다.

w = '한글'
x = w.encode('utf-8')
y = x[::-1]
z = y.decode('utf-8')

---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
<ipython-input-3-2a9efc5eb03f> in <module>()
      2 x = w.encode('utf-8')
      3 y = x[::-1]
----> 4 z = y.decode('utf-8')

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte