Первая проблема - вам нужно преобразовать число abc
в int
(как вы это делали для x
), чтобы отсортировать число. Чтобы разделить массив, как вы хотите, вы можете повернуть массив перед разделением.
import numpy as np
def array_list(x):
original_list = []
for i in range(0, x):
abc = int(input("Enter element: "))
original_list.append(abc)
original_list.sort(reverse=True)
return original_list
x = int(input("Enter no. of elements: "))
Input = array_list(x)
print("Input = ", Input)
Output = np.array_split(Input, int(x/3)) if x >= 3 else Input
print("Output = ", Output)
# test 1
Enter no. of elements: 7
Input = [77, 34, 23, 15, 13, 11, 7]
Output = [array([77, 34, 23, 15]), array([13, 11, 7])]
# test 2
Enter no. of elements: 8
Input = [77, 45, 34, 23, 15, 13, 11, 7]
Output = [array([77, 45, 34, 23]), array([15, 13, 11, 7])]
# test 3
Enter no. of elements: 9
Input = [99, 77, 45, 34, 23, 15, 13, 11, 7]
Output = [array([99, 77, 45]), array([34, 23, 15]), array([13, 11, 7])]