---
# System prepended metadata

title: Python Error

---

# Python Error

## TypeError
### 發生時間：2023/03/15 23:38
### 問題：slice indices must be integers or None or have an __index__ method

### code：
```python=
m = (s + e) / 2
l_sub = ls[s : m]
r_sub = ls[m : e]
```
寫merge_sort時遇到的，ls是待排序的串列，l_sub是左子串列，r_sub是右子串列

### 原因：
如它所說，切片只能放無或正整數，而m是浮點數，因為用到除法，所以是因為python不用宣告資料型態的鍋(也可以說我對python沒有到很了解)，有夠哭

### 解決方法：
把m轉為int型態
```python=
m = (s + e) / 2
m = int(m)
l_sub = ls[s : m]
r_sub = ls[m : e]
```
