Питхон

Променљиво вс. Непроменљиви објекти у Питхону

Променљиво вс. Непроменљиви објекти у Питхону

За Питхон се каже да је најневероватнији језик, јер га многи појединци бирају за свој први језик за програмирање због његове елеганције и једноставности. Захвални за своју широку заједницу, вишак пакета и доследну синтаксу, искусни професионалци такође користе Питхон. Иако постоји једна ствар која чини да нервира и почетнике и неке професионалне програмере - објекте из Питхона.

Променљиво вс. Непроменљив

Променљиво ентитети могу алтер њихов стање или супстанца да опише диспаритет и непроменљив ентитети не могу да промене своје стање или суштину. Дакле, када се креира објекат, посебан ИД објекта се додељује. Током извршавања, врста објекта је наведена и не може се касније ажурирати. Уграђени облици попут променљивих инт, флоат, боол, стр, тупле и Уницоде су непроменљиви. Објекти као што су листа, скуп, низови бајтова и речник уграђених категорија су променљиви.

Разумевање функције ИД и типа

Интегрисани ид () метода садржи ИД објекта као само цео број. Тај цели број се обично односи на положај за складиштење објекта. Тхе 'је'оператер међусобно повезује идентитете два објекта. Интегрисана функција, тип(), враћа врсту предмета. Упоредите две променљиве 'Икс' и 'г', који има исту вредност, користећи оператор једнакости'к == и', изаћи ће Истинито. Помоћу функција ид (), упоредили смо адресе меморије обе променљиве ће дати излаз Нетачно јер су обе променљиве различите и налазе се на различитим меморијским локацијама, иако су вредности које садрже исте.

Направи другу променљиву 'з'који указује на идентичан ентитет који'Икс'усмерава на, помоћу оператора доделе'='. Помоћу 'јеОткрили смо да обојица указују на исти објекат и имају исте меморијске адресе.

Непроменљиви типови променљивих

Погледајмо неке непроменљиве типове променљивих.

Интегер ДатаТипе

Хајде да дефинишемо променљиву 'Икс„имати вредност“10'. Уграђена ид () метода користи се за откривање локације 'Икс'у сећању и тип() користи се за идентификацију његовог типа. Када покушамо да променимо вредност „Икс', успешно је промењен, иако се адреса меморије враћа другачије. То је зато што заправо нисмо променили вредност 'Икс', али створили смо још један објекат са истим именом'Икс'и доделите му другу вредност. Повезали смо име 'Икс'на нову вредност. Сад, кад год позовете 'Икс'избациће нову вредност.

Стринг ДатаТипе

Исто за тип података низа, не можемо изменити постојећи променљива али морамо Креирај нови са истим именом. Ево нас дефинисано стринг променљива 'Икс„и желим да додам“в'на нула индекса. Излази ТипеЕррор, показујући да објект низа не подржава ажурирање.

Тупле ДатаТипе

Баците поглед на врсту корице променљива, дефинисали смо а тупле са 4 вредности. Користили смо функција ид () за излаз његове адресе. Када желимо да променимо његову вредност на 0 индекса, то даје ТипеЕррор тај набор не подржава додељивање или ажурирање ставки.

Напротив, можеш ажурирање цео тупле дефинисањем из огреботина. Сада, кад год то проверите, пронаћи ћете нову вредност и нову адресу.

Флоат ДатаТипе

Имамо променљиву типа флоат 'Икс'. Помоћу функција ид (), морамо да сазнамо његову адресу. Када желимо да променимо његову вредност на индекс 1, то даје ТипеЕррор тај пловак не подржава модификацију предмета.

Супротно томе, ажурирали смо пловак поновним дефинисањем. Сад, кад год га позовемо, наћи ћемо нову вредност и нову адресу.

Променљиве врсте променљивих

Сада ћемо размотрити неке променљиве типове променљивих.

Лист ДатаТипе

Дефинисали смо а листа назван 'Икс'и додајте му неке вредности. Док трцати, приказаће вредности листе. Када ти ажурирање листу додељивањем нових вредности индекс 0 и 2, то ће успешно урадити.

Горе описани пример је једноставан и основни пример модификације. Да бисмо проверили променљивост на други ниво, погледајмо исти пример са мало промене. Направили смо ново име 'г'и везао га за исти објекат листе. Када смо проверили да лиИкс' исто је као 'г', враћа Труе. С друге стране, обе 'Икс' и 'г' имају исти меморија адресе.

Сада додајте нову вредност а име листе 'к' и проверите ажурирани излаз.

Сада, када проверите листу име 'и', приказаће исту листу као и за 'к'. То значи да када ажурирамо исту листу објеката која има два различита имена 'к' и 'и'. Обе су исте и деле исте меморијске адресе чак и након модификације.

Речник података типа

Како су речници најчешће коришћене променљиве у Питхону, погледајмо променљивост речника. Дефинисали смо речник под називом 'дицтса три кључа и њиховим вредностима. Када га одштампамо, приказаће се сав његов садржај. Можете да одштампате сваку вредност речника одвојено, као и да користите њихову кључеви уместо индекса.

Желимо да промена одређену вредност ажурирањем тастер „Име“. Избациће ажурирани речник. Кључеви речника су непроменљиви.

Хајде да дефинишемо а листа и тупле одвојено. Уверите се да тупле мора имати а вредност типа листе у њему и на списку су а вредност типа корице у њему последично.

А тупле има листа на свом 0 индекса па кад се пресвучете на 0 индекса корпице, морате споменути индекс листе на којој желите да промените. До промене долази зато што је листа непроменљива.

Напротив, променљива листе не може се ажурирати јер има тупле на 0 индекс, који је променљив.

Закључак

Видели смо разлике у Питхону између променљивог и непроменљивог. Морате разјаснити свој ум да се све у Питхону назива објектом. Првенствено, разлика међу објектима који су променљиви вс. непроменљив.

Пример „гетоптс-а“ за Линук
„Гетоптс“ је врло корисна наредба у Линуку која је углавном уграђена у басх скрипте да би узела заставице и аргументе као улазе од корисника. Да бисмо...
Водич за наредбе за Линук Цхмод
Већина нових корисника Линука тражи начин путем командне линије за модификовање дозвола за датотеке / директоријуме. Корисницима би било драго да знај...
Како покренути Трацероуте у Линуку
Трацероуте је алат у Линуку који вам омогућава да истражите руте мрежних пакета. Може вам помоћи у идентификовању ограничавајућег фактора путовања мре...