2010-08-31 3 views
3

Если переменная my_list является глобальным, вы не можете сделать:Как удалить список Python без списка = = []?

my_list = [] 

что просто создать новую ссылку в локальной области видимости.

Кроме того, я нашел отвратительным использование ключевого слова global, так как я могу удалить список, используя его методы?

+3

'list' тип поэтому, пожалуйста, не использовать его в качестве имени переменной. – jathanism

+1

Ум ... У вас глобальные переменные (которые являются хронической проблемой) и называют ключевое слово «global» «отвратительным»? Во-первых, не было бы отвратительным присутствие глобальных переменных? Почему бы не устранить все возможные потребности в «глобальном»? Зачем обойти это? –

+0

@jathanism вы правы, очень плохой выбор для примера. Я исправлю это в вопросе. –

ответ

1

Как насчет следующих действий, чтобы удалить все элементы списка:

def emptyit(): 
    del l[:] 
+0

Замена практически атомного оператора функцией? –

+0

@Beau, это вовсе не атом. Я бы не сказал, что «практически» даже приближается. – habnabit

+0

@ Аарон Вы правы ... Опорожнение списка примерно так же неатомно, как вы можете получить. Я имел в виду семантически атомный, под которым я подразумеваю, что он читается как один оператор на языке (удалите весь этот список). –

Смежные вопросы