Зависание в Python?

Я программировал на Python некоторое время, и только недавно начал использовать Ruby в работе. Языки очень похожи. Однако я только что наткнулся на функцию Ruby, которую я не знаю, как воспроизвести в Python. Это метод Ruby freeze .

irb(main):001:0> a = [1,2,3]
=> [1, 2, 3]
irb(main):002:0> a[1] = 'chicken'
=> "chicken"
irb(main):003:0> a.freeze
=> [1, "chicken", 3]
irb(main):004:0> a[1] = 'tuna'
TypeError: can't modify frozen array
        from (irb):4:in `[]='
        from (irb):4

Есть ли способ имитировать это в Python?

РЕДАКТИРОВАТЬ: Я понял, что сделал вид, будто это только для списков; в Ruby freeze - это метод для объекта , поэтому вы можете сделать любой объект неизменяемым. Прошу прощения за недоразумение.

12
задан kerkeslager 15 October 2010 в 14:49
поделиться