冒泡排序算法输入无效 (Python)

Bubble sort algorithm input not working (Python)

这是一个关于 python 中一些数组处理的问题。

我有以下代码从变量 sorted 中读取数字数组:

print("Original: ",sorted)

for largeRepeat in range(0,len(sorted)):
    for Repeat in range(0,len(sorted)-1):
        Number1 = sorted[Repeat]
        Number2 = sorted[Repeat + 1]
        if Number1 > Number2:
            sorted[Repeat] = sorted[Repeat+1]
            sorted[Repeat+1] = Number1



print("Sorted: ",sorted)

现在,我遇到的问题是我可以用两种不同的方式为数组分配一些值,硬编码到程序中:

sorted = [1,11,22,2]

或通过用户输入,拆分使用 split():

提供的数字
inputs = input("Enter numbers as comma (,) separated values: ")
ToSort = inputs.split(",")
sorted = ToSort

如果我使用永久方法,程序正确returns:

Original:  [1, 11, 22, 2]
Sorted:  [1, 2, 11, 22]

但是,如果我使用用户输入,程序会出错 returns:

Original:  ['1', '11', '22', '2']
Sorted:  ['1', '11', '2', '22']

任何人都可以提供任何关于为什么会发生这种情况的见解,我已经 运行 多次尝试该程序并将其隔离到这个特定部分。

我还注意到 returns 用户输入的数字是文本字符串,但我看不出这会导致什么问题。 (抱歉,我对此很陌生!)

提前致谢!

编辑: 谢谢,已经

您需要将每个输入转换为 int

ToSort = list(map(int, inputs.split(",")))