Как правильно использовать rstrip для удаления последнего вхождения символа? - PullRequest
0 голосов
/ 06 апреля 2020
if __name__ == '__main__':
    x = int(input())
    y = int(input())
    z = int(input())
    n = int(input())
while True:
    print('[', end="")
    for i in range(0,x+1):
        for j in range(0,y+1):
            for k in range(0,z+1):
                array=[i,j,k]
                if (i+j+k)!=n:
                    print(array, end=", ")

    print(']')
    break

Отображает вывод в виде: [[0, 0, 0], [0, 0, 1], [0, 1, 0], [1, 0, 0], [1, 1, 1 ],]

Требуемый выход: [[0, 0, 0], [0, 0, 1], [0, 1, 0], [1, 0, 0], [1, 1, 1]]

Как удалить последнюю запятую?

Я попытался использовать функцию rstrip внутри l oop, но она удаляет все остальные запятые, что приводит к ответу как: [[0, 0, 0] [0, 0, 1] [0, 1, 0] [1, 0, 0] [1, 1, 1]]

1 Ответ

2 голосов
/ 06 апреля 2020

Я не понимаю, для какой цели служит True, но я просто советую вам использовать список, а затем распечатать его как есть:

while True:
    myList = list()
    for i in range(0,x+1):
        for j in range(0,y+1):
            for k in range(0,z+1):
                array=[i,j,k]
                myList.append(array)

    print(myList)
    break
...