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