A *function* is a block of code which runs some commands and can be called on from elsewhere in the code.

example:

    def function():
        print "I do something."

    # now we can call the function from other code, like this, and it will always print "I do something".
    function()


A *class* represents an object. A thing. It can contain both *data* and *functions that operate on the data*.

A function which is attached to a class is called a *method*. It can only be called through the class.

So, for example:

    class Car():
       def __init__(self):
          self.model = "Honda"
          self.color = "red"

       def drive(self, destination):
          # do something 

    henry = Car()
    henry.drive()


in this example, I have a "car" class with two attached methods. One of them, __init__, is something used by python to create the object. The other one, drive(), does something about driving.

then i created an *instance* of the car class, and called the method 'drive' on the instance.

So: function() is a 'function', meaning a block of code that can be  called from elsewhere and run when it is called. 'Car' is a *class*, which is a collection of data and functions that operate on that data; the functions contained within a class are called 'methods'. So *drive* is a function contained within Car, meaning it is a method.
*Function* යනු සමහර විධාන ක්‍රියාත්මක කරන සහ කේතයේ වෙනත් තැනකින් ඇමතීමට හැකි කේත සමූහයකි. උදාහරණය: def ශ්‍රිතය (): &quot;මම යමක් කරනවා&quot; මුද්‍රණය කරන්න. # දැන් අපට වෙනත් කේතයකින් ශ්‍රිතය ඇමතීමට හැකි අතර, එය සැමවිටම &quot;මම යමක් කරමි&quot; යනුවෙන් මුද්‍රණය කරනු ඇත. function() *class* යනු වස්තුවක් නියෝජනය කරයි. දෙයක්. එහි *දත්ත* සහ *දත්ත මත ක්‍රියාත්මක වන *ක්‍රියාකාරී දෙකම අඩංගු විය හැක*. පන්තියකට අමුණා ඇති ශ්‍රිතයක් *ක්‍රමයක්* ලෙස හැඳින්වේ. එය කැඳවිය හැක්කේ පන්තිය හරහා පමණි. ඉතින්, උදාහරණයක් ලෙස: class Car(): def __init__(self): self.model = &quot;Honda&quot; self.color = &quot;red&quot; def drive(self, destination): # do something henry = Car() henry.drive( ) මෙම උදාහරණයේ, මා සතුව &quot;කාර්&quot; පන්තියක් අමුණා ඇති ක්‍රම දෙකක් ඇත. ඒවායින් එකක්, __init__, වස්තුව නිර්මාණය කිරීමට python විසින් භාවිතා කරන දෙයකි. අනිත් එක drive(), drive කරන එක ගැන මොනවා හරි කරනවා. පසුව මම කාර් පන්තියේ *උදාහරණයක්* නිර්මාණය කර, එම ක්‍රමය &#39;ඩ්‍රයිව්&#39; ලෙස හැඳින්වුවෙමි. ඉතින්: function() යනු &#39;function&#39; එකක් වන අතර, එයින් අදහස් කරන්නේ වෙනත් තැනකින් ඇමතීමට සහ එය ඇමතූ විට ක්‍රියාත්මක වන කේත සමූහයකි. &#39;කාර්&#39; යනු *පන්තියකි*, එය එම දත්ත මත ක්‍රියාත්මක වන දත්ත සහ ක්‍රියාකාරකම්වල එකතුවකි; පන්තියක් තුළ අඩංගු කාර්යයන් &#39;ක්‍රම&#39; ලෙස හැඳින්වේ. එබැවින් * Drive* යනු Car තුළ අඩංගු ශ්‍රිතයකි, එනම් එය ක්‍රමයක් වේ.