Pythons objektorienteret struktur tillader programmører at skabe sofistikerede programmer, men nogle gange er det nemmere at arbejde med en funktion uden at instantiere en klasse objekt. Python tillader dig at gemme funktioner i kan indføres class filer, men betegner dem som en " statisk" funktion, så du kan kalde det uden at skabe et objekt. Funktioner
En novice Python programmør tendens til at producere , hvad der er kendt som " spaghetti -koden. " Han typer ud alle af koden for et program , men det er gentagelser, uorganiseret , og vanskelige at redigere eller vedligeholde . Da han lærer mere om programmering , begynder han at bruge funktioner , også kendt som metoder til bedre at organisere koden. Hver funktion indeholder kildekoden er nødvendige for at udføre et bestemt sæt af operationer. Hver gang du har brug for at udføre det segment af kode, kan du bruge navnet på den funktion , du har oprettet .
Klasser
Python tilrettelægger sin kildekode til datastrukturer kaldet klasser. Hver klasse kan indeholde et vilkårligt antal individuelle funktioner . Klasser kan enten bruges som et sæt af planer for Python tolk til at konstruere selvstændigt fungerende objekter , eller som en beholder til metoder, som du ofte bruger. Ved at sætte de metoder i en separat kildekode fil i sin egen klasse , kan du importere denne kode ind i dit projekt med en enkelt linje.
Class Versus Static
< p> De funktioner inde i en klasse kan enten være statiske funktioner eller klasse funktioner. For at bruge en klasse -funktion , skal du instantiere et objekt af denne klasse, så kalder metoden gennem objektet selv. Statiske funktioner ikke kræver, at du opretter et objekt af klassen for at ringe og udføre dem .
Fotos Making Static Function
Som standard funktioner inde i klasse filer er klasse funktioner. Ved at skrive ud " @ staticmethod " på linjen over en funktion erklæring , kan du konvertere den til en statisk metode. Ingen andre syntaktiske forskelle er til rådighed til at erklære en statisk funktion i modsætning til erklæring en klasse -funktion. Du kan udføre en statisk funktion ved hjælp af syntaksen " classname.function () ", hvor " klassenavn " er navnet på den klasse, i hvilken funktion er bosat, og " funktion" er navnet på den metode . < Br >