Sobes.tech
Junior — Middle

Python'da satrlarning o'zgarmasligi xususiyatining nima va nima uchun ular yaratildan keyin o'zgartirilmaydi?

sobes.tech AI

AIdan javob

Python'da satrlar o'zgarmas (immutable) ob'ektlar hisoblanadi. Bu shuni anglatadiki, satr yaratilgandan so'ng, uning mazmuni o'zgartirilmaydi.

Bunday xususiyatning sabablari:

  • Xotira va ishlash samaradorligini oshirish. O'zgarmaslik satrlarni intern qilish imkonini beradi — bir xil satrlarning bitta nusxasini xotirada saqlash, bu resurslarni tejashga yordam beradi.
  • Xavfsizlik va bashorat qilish. Agar satrlar o'zgartirilmasa, bu tasodifiy yoki noxush o'zgarishlarni oldini oladi, ayniqsa, satrlarni funksiyalar o'rtasida o'tkazishda.

Masalan, satrning belgisini to'g'ridan-to'g'ri o'zgartirishga urinish:

s = "hello"
s[0] = 'H'  # Xato TypeError: 'str' object does not support item assignment

Satrni o'zgartirish uchun yangi satr yaratish kerak:

s = "hello"
s = 'H' + s[1:]  # Endi s == "Hello"

Shunday qilib, Python'dagi satrlar samaradorlik va xavfsizlikni oshirish uchun o'zgarmas ob'ektlar sifatida amalga oshirilgan.