Search
 
SCRIPT & CODE EXAMPLE
 

PYTHON

self in python

"""

Before potentially reading along I highly suggest you master how to
use parameters and arguments in python because if you haven't this can
get confusing. Otherwise read along:

The self argument is most frequently used in the __init__ function.

The __init__ function is a constructor function meaning that it 
constructs objects in a class.

This is part of the object oriented programming (OOP) branch.

In this example ill be creating a person with values of name, gender and
age.

What 'self' essentailly is, is the class, so when referring to 'self'
you are refering to values in a class.

So 'self.age = age' is just adding a variable in the
class which has the same value as 'age'.

"""

# Creating the class
class Person:
  # Creating the constructor method
  def __init__(self, name, age, gender):
    # defining variables
    self.name = name
    self.age = age
    self.gender = male

# Creating Objects 
Person1 = Person("Isabella", 27, "female")
Person2 = Person("Mikkel", 29, "male")

# Creating a list of people:
People = [ Person1, Person2 ]

"""

You can now use the list of people to well.. list people and their
details.

You could make a table of people by making the array 2 dimensional
which can eventually lead to a database, 
but this isn't a post to get into that.

"""
"""

Thats essentially how to use constructors, you're creating an object
relative to topic per se. More examples / usages:

"""

class Person:
  def __init__(self, name, age, gender):
    # The 3 arguments can only be used within this function
    # So you must attach it to the class using 'self'
    self.name = name
    self.age = age
    self.gender = gender
  
  def Function(self):
    # To be able to use it all around the class.
    print(self.name)
    print(self.age)

P = Person("Jeff", 27, "male")

P.Function()
# Output:
# >>> Jeff
# >>> 27

#Or

print(P.name)
print(P.age)
# Output:
# >>> Jeff
# >>> 27


"""

So overall this comes to show that self.something is the exact same as
a varible but rather than a global variable or a variable within a
function scope, it's instead a class variable.

So when doing 'self.something' logically you can think of it as:
'class.something'

And thats it. To see a better way of coding the code above you can
carry on reading but although it's not necessary to know.



A better way of calling a class is to use the __call__ method.

This creates an inbuilt constant function within the class that can be
called, rather than creating a function as above.

"""

class Person:
  
  def __init__(self, name, age, gender):
    self.name=name
    self.age=age
    self.gender=gender
   
  def __call__(self):
    print(self.name)
    print(self.age)

# Creating the object
P = Person("Jeff", 27, "male")

# Calling the call function:
P()
# Output:
# >>> Jeff
# >>> 27

# This makes everything much neater and compact.

# Have a wonderful day :)
Comment

what is self in python

self is used to refer to the specific object that is calling that function
Comment

self in python

class Class(parentClass):
    def __init__(self,arg):
        self.arg = arg
        
    def function(self):
        print(arg)
Comment

self python

class A(object):

    @staticmethod
    def stat_meth():
        print("Look no self was passed")
>>> a = A()
>>> a.stat_meth()
Look no self was passed
Comment

self._ in python

def thing_counter(self, thing):
    length_of_thing = len(thing)
    return length_of_thing
  
  
def thing_counter(self, thing):
    self._length_of_thing = len(thing)
    return self._length_of_thing
Comment

PREVIOUS NEXT
Code Example
Python :: x = 10 x += 12 y = x/4 x = x + y in python 
Python :: Reverse an string Using Reversed 
Python :: get the largest of 2 strings python 
Python :: I**2 python 
Python :: how to get path of all the functions in a python module 
Python :: google codelabs 
Python :: discord api python putting ids in a list 
Python :: City in ontario with cheapest houses 
Python :: pandas numpy multiplicar dos columnas segun una condicion 
Python :: print(shahzaib) 
Python :: proxy pool for scrapy 
Python :: pyevtk documentation writearraystovtk 
Python :: required depend filed odoo 
Python :: python from string to bytes to hex 
Python :: taggablemanager serializer django 
Python :: how to update pip in python 
Shell :: Pyperclip could not find a copy/paste mechanism for your system 
Shell :: install handbrake ubuntu 
Shell :: list npm packages installed globally 
Shell :: Remove composer for ubuntu 
Shell :: update node version debian 
Shell :: docker rm all containers 
Shell :: remove remote origin 
Shell :: vue-cli-service not found ubuntu 
Shell :: uninstall npm ubuntu 
Shell :: Job for mongod.service failed because the control process exited with error code. See "systemctl status mongod.service" and "journalctl -xeu mongod.service" for details. 
Shell :: conda install git 
Shell :: restart crontab 
Shell :: ubuntu clear dns cache 
Shell :: git delete all tags local and remote 
ADD CONTENT
Topic
Content
Source link
Name
5+2 =