It’s time to talk about examples again. This time we are talking about example tutorials on the use of python special class methods. There are many.
1.__getitem__Specialized method
##
1 >>> map = {'name':'c小加'} 2 >>> map.__getitem__("name") 3 'c\xe5\xb0\x8f\xe5\x8a\xa0'
Just redirect to the dictionary and return the value of the dictionary
2.__setitem__Specialized method
## >>> map = {'name':'c小加'}
2 >>> map.__setitem__('monaker','队花')
3 >>> map
4 {'monaker': '\xe9\x98\x9f\xe8\x8a\xb1', 'name': 'c\xe5\xb0\x8f\xe5\x8a\xa0'}
map actual The above is a class that pretends to be a dictionary as much as possible, just like C Xiaojia, pretending to be the team star as much as possible, even though he is a male.
>>> map['monaker'] = '队花' >>> map {'monaker': '\xe9\x98\x9f\xe8\x8a\xb1', 'name': 'c\xe5\xb0\x8f\xe5\x8a\xa0'} 这个看上去像个正常的字典语法,这行代码实际上暗自调用了map.__setitem__('monaker','队花')
Overriding the __setitem__ method in a class is strictly defined in the same form as the parent class method. The name of the parameter doesn't matter, just the number. At the same time, when calling the parent class directly, although there is no __setitem__, Python will walk along the parent class tree until it finds the class in which we are calling the method.
3 .__repr__ is a dedicated method that is called when repr(instance) is called. repr
function is a built-in function that returns a string representation of an object. It can be used on any object, not just instances of classes. You have already responded to repr
Pretty familiar even though you don't know it. In the interactive window, when you type just a variable name and then press ENTER, Python uses repr
to display the value of the variable. Create a dictionary d with some data, and then use print repr(d) to take a look.
4.__cmp__ Called when comparing class instances. Generally, you can compare any two Python objects by using ==
Objects, not just class instances. There are some rules that define when built-in data types are considered equal. For example, dictionaries are equal if they have all the same keys and values. For class instances you can define
__cmp__ method, write your own comparison logic, then you can use == to compare your classes, and Python will call your __cmp__ special method for you.
5.__len__ is called when len(instance) is called. len is a built-in function that returns the length of an object. It can be used for any object that is thought to have a deserving length. string
len is its number of characters; len of a dictionary is the number of its keywords; len of a list or sequence is the number of elements. For class instances, define __len__
method, then write your own length calculation, then call len(instance), and Python will call your __len__ special method for you.
6.__delitem__ Called when del instance[key] is called, you may remember it as deleting a single item from the dictionary Element methods. When you use del on a class instance, Python calls the __delitem__ private method for you.
Private methods mean that any class can hold key-value pairs like a dictionary by defining a __setitem__ method. Any class can behave like a sequence by defining
__getitem__ method. Any class that defines a __cmp__ method can be compared using ==. And if your class behaves like it has something like length, don't define
GetLength method, instead define __len__ method and use len(instance).
【Related recommendations】
1.
In-depth understanding of the special function __len__(self) in python2. Little knowledge that must be mastered--detailed explanation of Python len examples 3. Summary of the len() function in Python Usage examples 4. Python magic methods __getitem__, __setitem__, __delitem__, and __len__ are introduced respectively
The above is the detailed content of Example tutorial on using python special class methods. For more information, please follow other related articles on the PHP Chinese website!

Pythonlistsareimplementedasdynamicarrays,notlinkedlists.1)Theyarestoredincontiguousmemoryblocks,whichmayrequirereallocationwhenappendingitems,impactingperformance.2)Linkedlistswouldofferefficientinsertions/deletionsbutslowerindexedaccess,leadingPytho

Pythonoffersfourmainmethodstoremoveelementsfromalist:1)remove(value)removesthefirstoccurrenceofavalue,2)pop(index)removesandreturnsanelementataspecifiedindex,3)delstatementremoveselementsbyindexorslice,and4)clear()removesallitemsfromthelist.Eachmetho

Toresolvea"Permissiondenied"errorwhenrunningascript,followthesesteps:1)Checkandadjustthescript'spermissionsusingchmod xmyscript.shtomakeitexecutable.2)Ensurethescriptislocatedinadirectorywhereyouhavewritepermissions,suchasyourhomedirectory.

ArraysarecrucialinPythonimageprocessingastheyenableefficientmanipulationandanalysisofimagedata.1)ImagesareconvertedtoNumPyarrays,withgrayscaleimagesas2Darraysandcolorimagesas3Darrays.2)Arraysallowforvectorizedoperations,enablingfastadjustmentslikebri

Arraysaresignificantlyfasterthanlistsforoperationsbenefitingfromdirectmemoryaccessandfixed-sizestructures.1)Accessingelements:Arraysprovideconstant-timeaccessduetocontiguousmemorystorage.2)Iteration:Arraysleveragecachelocalityforfasteriteration.3)Mem

Arraysarebetterforelement-wiseoperationsduetofasteraccessandoptimizedimplementations.1)Arrayshavecontiguousmemoryfordirectaccess,enhancingperformance.2)Listsareflexiblebutslowerduetopotentialdynamicresizing.3)Forlargedatasets,arrays,especiallywithlib

Mathematical operations of the entire array in NumPy can be efficiently implemented through vectorized operations. 1) Use simple operators such as addition (arr 2) to perform operations on arrays. 2) NumPy uses the underlying C language library, which improves the computing speed. 3) You can perform complex operations such as multiplication, division, and exponents. 4) Pay attention to broadcast operations to ensure that the array shape is compatible. 5) Using NumPy functions such as np.sum() can significantly improve performance.

In Python, there are two main methods for inserting elements into a list: 1) Using the insert(index, value) method, you can insert elements at the specified index, but inserting at the beginning of a large list is inefficient; 2) Using the append(value) method, add elements at the end of the list, which is highly efficient. For large lists, it is recommended to use append() or consider using deque or NumPy arrays to optimize performance.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

Atom editor mac version download
The most popular open source editor

Dreamweaver Mac version
Visual web development tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SublimeText3 Mac version
God-level code editing software (SublimeText3)
