Подтвердить что ты не робот

Стереть весь массив Python

Как удалить целый массив, оставив его без элементов?

Я хочу сделать это, чтобы сохранить в нем новые значения (новый набор из 100 поплавков) и найти минимум.

Сейчас моя программа читает минимум из наборов, прежде чем я думаю, потому что она добавляет себя с предыдущим набором, все еще там. Я использую .append, кстати.

4b9b3361

Ответ 1

Обратите внимание, что list и array - это разные классы. Вы можете сделать:

del mylist[:]

Это фактически изменит ваш существующий список. Ответ Дэвида создает новый список и присваивает его той же переменной. Что вы хотите, зависит от ситуации (например, имеет ли какая-либо другая переменная ссылку на тот же список?).

Try:

a = [1,2]
b = a
a = []

и

a = [1,2]
b = a
del a[:]

Распечатайте a и b каждый раз, чтобы увидеть разницу.

Ответ 2

Это просто:

array = []

установит array как пустой список. (Они называются списками в Python, кстати, а не массивами)

Если это не сработает для вас, отредактируйте свой вопрос, чтобы включить образец кода, который демонстрирует вашу проблему.

Ответ 3

Ну да, массивы действительно существуют, и нет, они не отличаются от списков, когда дело касается таких вещей, как del и append:

>>> from array import array
>>> foo = array('i', range(5))
>>> foo
array('i', [0, 1, 2, 3, 4])
>>> del foo[:]
>>> foo
array('i')
>>> foo.append(42)
>>> foo
array('i', [42])
>>>

Отличия, которые стоит отметить: вам нужно указать тип при создании массива и сохранить хранилище за счет дополнительного времени преобразования между типом C и типом Python, когда вы делаете arr[i] = expression или arr.append(expression), и lvalue = arr[i]

Ответ 4

Теперь, чтобы ответить на вопрос, который, возможно, вы должны были спросить, например "Я получаю 100 форм с плавающей точкой где-то, мне нужно поместить их в массив или список, прежде чем я найду минимум?"

Ответ: Нет, если somewhere является итерируемым, вместо этого:

temp = []
for x in somewhere:
   temp.append(x)
answer = min(temp)

вы можете сделать это:

answer = min(somewhere)

Пример:

answer = min(float(line) for line in open('floats.txt'))