Bedste måde at lære Python på

Hvis du ikke er programmør, kan Python være dit udgangspunkt, da det ligger øverst på listen over de bedste programmeringssprog i 2021 og også er det letteste at lære. Hvis du kender andre programmeringssprog, vil det være en leg for dig at lære Python. Bortset fra syntaksforskellene forbliver de grundlæggende begreber i OOP de samme. Desuden har Python omfattende biblioteker, der understøtter næsten alt, hvad du ønsker at gøre.

Python er

  • Læsbart og letforståeligt støttemoduler og tilskynder til genbrug af kode.
  • Tværplatformssprog – kod én gang, kør hvor som helst (Windows, Linux, Unix, Mac osv…)
  • Interpreteret sprog – fortolkeren udfører hver kodelinje en efter en, hvilket gør det nemt at fejlfinde.
  • Open-source, så du kan nemt øve dig når som helst

Dertil kommer, at Python har et fremragende sæt standardbiblioteker

  • der muliggør integration med andre sprog som Java, C, C++.
  • understøtter objektorienteret programmering

Med disse ting i baghovedet, lad os gennemgå de emner, som du skal lære for at mestre Python, fra det grundlæggende til avancerede emner. Ved slutningen af denne artikel vil du kende nok Python til at begynde at kode, besvare interviewspørgsmål og få et fremragende job for dig selv.

Du kan installere Python fra den officielle side.

Bedste måde at begynde at lære Python på

Den bedste måde at lære Python på er at implementere det, du læser. Du skal bare åbne din bærbare computer, installere Python og begynde at kode. Du kan lære undervejs!

Men før du gør det, er her nogle tips til at gøre det nemt for dig –

  • Hvis du er ikke-programmør, skal du have lidt ekstra tålmodighed. Du vil helt sikkert nå dertil. Python er den nemmeste måde at komme ind i programmering på.
  • Tænk på din lille applikation, og lav din læring omkring den. Opbyg helst et simpelt websted ved hjælp af Django. For eksempel at gennemse listen over telefoner og købe en, købe dine ugentlige dagligvarer online, administrere medarbejderoplysninger og meget mere. Hvis du bare læser og ikke prøver det, du læser, vil du ikke være i stand til at forstå eller huske begreberne.
  • Hvis du får en fejl, betyder det, at du er på vej i den rigtige retning. Hvis du laver en masse fejl, er det godt. Hver fejl skal gøre dig begejstret og ivrig efter at finde løsningen. Den bedste læring sker gennem fejl og undtagelser.
  • Tag et velrenommeret onlinekursus for at kickstarte din Python-rejse. From Zero to Hero in Python er et til det bedste kursus på internettet for at begynde at lære Python.
  • Lær syntaksen undervejs. Brug ikke for meget tid på at lære syntaksen alene. Få et projekt sat op med et IDE som PyCharm, begynd at kode. Du vil lære syntaksen at kende, efterhånden som du skriver mere kode.
  • Start med et simpelt projekt, og forbedr funktionaliteten efterhånden som du koder. Inddrag mere komplekse koncepter, efterhånden som du kan udvikle kode.

Okay, uden flere teorier, så lad os komme i gang.

Du kan måske springe de første par underemner over, hvis du allerede kender et eller to andre sprog. Disse vil byde dig velkommen i programmeringsverdenen ved at gøre dig fortrolig med almindelige jargoner, der anvendes i de fleste sprog.

Variabler og datatyper

Sæt, at du ønsker at købe en telefon. Du gennemser en masse telefoner og lægger en i din indkøbskurv. Hvordan ved computeren, hvor den skal gemme dine data som f.eks. en telefonmodel, det abonnement, du har valgt, og eventuelt tilbehør, f.eks. høretelefoner, som du har tilføjet?

Data gemmes i form af variabler. Det hjælper applikationen med at bevare og videregive dataene fra begyndelsen til slutningen af applikationen (f.eks. siden for bestilling), hvor din bestilling slutter.

Der findes forskellige typer af data. F.eks. vil dit telefonnummer være et heltal; serviceplanen kan være en String, en variabel til at bestemme, om du har nogen kuponer, kan være en Boolean osv. Integer, Boolean, String (og nogle andre) kaldes som datatyper.

Lad os tjekke et simpelt eksempel –

handset_id = 90993plan = "MYPLAN199"print(handset_id, plan)

Vi kan bruge disse variabler handset_id og plan i hele programmet i stedet for at bruge hard-codede værdier.

Operationer

Alt, hvad vi gør ved dataene, kaldes en proces. Addition, subtraktion, sammenligning eller logiske operationer. Hvis vi f.eks. vil sammenligne en brugers nye mobilabonnement og det eksisterende abonnement, kan vi skrive noget som –

print(new_plan == old_plan)

Doublen equals er en sammenligningsoperator, der returnerer en sand eller falsk som output. Der er mange operatorer i Python.

Betingelser

Lad os sige, at der gives en rabat på dit abonnement baseret på nogle sygdomme som dit månedlige forbrug, valg af håndsæt og flere andre faktorer. Hvordan kontrollerer programmet automatisk, om du er berettiget til en rabat? Ved at kontrollere, om disse betingelser er opfyldt!

if(plan == 'DISCOUNT30' and customer_existing):print('You are eligible for discount')else if(some_condition):#some block of codeelse#some other block of code

Der findes mange andre betingelser i Python, f.eks. while- og for-sløjfer. Læs denne fremragende blog for at få mere at vide om de betingede udsagn i Python.

Funktioner

I nogle tilfælde er der visse funktionaliteter, som vi måske ønsker at genbruge, eller et stykke kode kan være så stort, at det kan være en god idé at flytte det til en separat blok og kalde det, når det er nødvendigt. Sådanne blokke kaldes funktioner. Vores ovenstående kode kan f.eks. flyttes til en hjælpefil, og alle kan bruge funktionen.

def check_for_discount(customer_existing):#function code

def definerer funktionen. Når vi kalder funktionen, overdrager vi værdien af customer_existing (i dette tilfælde). Det kaldes en parameter. Vi kan videregive alle parametre til en funktion.

Objektorienteret programmering

De fleste af de bedste programmeringssprog i dag er baseret på OOPS (objektorienterede programmeringskoncepter), og det samme er Python. Det er et ligetil koncept, og det er et kraftfuldt koncept. I OOP betragtes alting som et objekt. En klasse er en enhed, som vi skaber objekter af efter behov.

Se denne seje video for at lære om OOPS-koncepterne.

I vores håndsæteksempel kan håndsættet være en klasse, og alle håndsætdetaljer som model, mærke, type, funktioner kan være dets attributter. Når en bruger vælger et håndsæt, oprettes der et objekt af håndsæt-klassen, og detaljerne udfyldes i dets attributter (medlemsvariabler).

Du kan betragte et menneske som en klasse – menneske. Dine attributter kan være navn, alder, køn og så videre. Du kan finde dig selv som et objekt i klassen Human med specifikke værdier som navn = ‘Mac’, alder = ’22’, køn = ‘M.’

Hver klasse har attributter og metoder til at hente og indstille disse attributter. En klasse vil også have en konstruktor eller en init-metode, som vil skabe objektet i klassen, når der er behov for det.

class Human:def ___init__(self, name, age, gender):self.name = nameself.age = ageself.gender = gender

Forsøg at anvende denne analogi på vores håndholdte klasse.

class Handset:def ___init__(self, handset_id, model, manufacture_date, features):self. handset_id = handset_idself. model = modelself. manufacture_date = manufacture_dateself.features = featuresdef printhandsetdetails():print(self.handset_id, self.model)

Lad os nu sige, at en bruger har lagt et bestemt håndsæt i sin indkøbskurv. Detaljerne kan gemmes som –

handsetDetails = Handset("NOKN96", "2009", "23-05-2009", "slim")

Såfremt vi ønsker at udskrive disse detaljer, kan vi tilføje en metode inde i klassen til at gøre dette og kalde den som handsetDetails.printhandsetdetails()

Datastrukturer

Begrebet datastruktur er fælles for alle programmeringssprog. I Python kalder vi dem som en samling. Der er forskellige typer af grupper i Python, der gør lagring og hentning af data, et let stykke kage. Disse gør også programmet hurtigt og effektivt. De fire hovedtyper af samlinger er –

  • Liste – den enkleste af alle datastrukturer, listen er en ordnet samling, som også er foranderlig. For eksempel,

featurelist = 

For at få adgang til listeelementer henviser vi til dem ved hjælp af indekset, og indekset starter altid med 0. featurelist giver dig frontcamera.

  • Tuple – er også ordnet, men kan ikke ændres. Du kan ikke tilføje eller fjerne elementer i en tuple.
  • Set – uordnet og uindekseret samling. Du kan ikke få adgang til sætelementer ved hjælp af indekset; du kan dog gennemløbe elementerne eller scanne dem for at kontrollere, om et element er til stede.
  • Dictionaries – kaldes også for maps, og der er adgang til disse via nøgle-værdipar. De er ikke ordnede. For eksempel,
handsetdetails = { "name": "Nokia6.1", "color": "Black", "RAM": "6GB"}

For at få værdien skal vi tilgå ved hjælp af nøglen handsetdetails.

Dette gratis udacity-kursus er et godt kursus, hvis du vil have et detaljeret kendskab til datastrukturer og algoritmer i Python. Hvis du tager dette, vil du senere kunne bruge datastrukturer i ethvert programmeringssprog.

Læring af datastrukturer vil hjælpe dig med at lege med data i Python og bygge en stor applikation med lethed. Det vil også hjælpe dig med at mestre effektiv skrivning, effektiv kode og dynamisk programmering.

Brugerinput

At få input fra brugeren er ret simpelt. Du skal blot bruge input()-metoden for at få input fra konsollen.

name = input('Enter handset name - ')

Baseret på det modtagne navn kan du hente detaljer om håndsættet og vise det til brugeren. Data kan hentes fra en fil eller database ved hjælp af forbindelsen.

Forbindelse til database

For at oprette forbindelse til en database skal du installere MySQL connector Python (til MySQL) eller MongoDB-driver som PyMongo. Hvis du er nybegynder, skal du gå efter MySQL, da det er mest almindeligt og nyttigt at lære.

Denne enkle vejledning vil gennemgå trinene for at oprette forbindelse til databasen og hente de nødvendige oplysninger.

Filhåndtering

Filhåndtering er en vigtig del af enhver applikation. Dit program ønsker måske at læse fra en fil, skrive til en fil osv. Det er ubesværet at implementere filhåndtering i Python. Der er to typer data i Python – binære data og tekstdata. Der er fire typer filoperationer, som vi kalder CRUD – Create, Read, Update, Delete. Vi kan f.eks. åbne en fil som –

file = open("handsetlist.txt", "w"); 

#Dette vil åbne filen i “w”, dvs. skrivetilstand

Hvis vi angiver “r”, vil filen åbnes i læsetilstand, for at tilføje en ny række bruger vi “a” (append). ‘r+’-tilstanden er en særlig tilstand, der håndterer både læse- og skrivehandlinger, mens der arbejdes med en fil.

For at læse en fil bruger vi metoden file. read (), og for at skrive, ja, du gættede det rigtigt! Vi bruger file.write(“data til at skrive”).

Læs om og leg med flere filhåndteringsfunktioner fra dette skarpe og enkle link.

Så nu kan du oprette individuelle programmer, stand-alone-applikation, der giver perfekte resultater. Men hvad med et scenarie, hvor dit program kan tilgås af flere personer på samme tid. F.eks. en printer, der er tilgængelig for forskellige brugere, hvordan håndterer printeren flere opgaver uden at gå i hårdknude?

Concurrency og Multithreading

Der kan være situationer som ovenstående. To eller flere processer venter på den samme ressource. Lad os sige, at en proces A forsøger at få adgang til en ressource R. Nu forsøger proces B også at få adgang til ressource R. For at undgå problemer med, at B tilsidesætter A’s data, vil processerne blive synkroniseret, hvor hver proces (B, C, D osv…) er blokeret, indtil den foregående tråd/proces A er færdig med at bruge ressourcen R. Dette kaldes gensidig udelukkelse.

Det betyder, at proces A låser ressourcen indtil den tid, hvor den bruger ressourcen, og frigiver den, når den er færdig. De andre processer skal vente på, at det bliver deres tur til at få låsen. Men hvad nu, hvis proces A løber ind i et problem og ikke er i stand til at fuldføre sit arbejde? Hvad hvis proces A har brug for noget fra proces B for at blive afsluttet, og B venter på, at A er færdig. Det kaldes en fastlåst situation! Deadlock er dødbringende, og det vil du ikke have i dit program.

I et arbejdsmiljø er det vigtigt at kende til multithreading, multiprocessing og låse.

Skabelse af API-tjenester

Lad os nu tage et større billede – af webverdenen, hvor programmer og applikationer interagerer med hinanden, deler ressourcer og, vigtigst af alt, sender forespørgsler til hinanden ved hjælp af HTTP-protokollen. Hvert program, der kan kommunikere med et andet, kaldes en mikroservice. Det betyder, at hvis du vil have din app til at interagere med verden, skal du vide, hvordan du kan eksponere dine tjenester – ved at oprette API! Du kan hurtigt generere API-tjenester ved hjælp af Python-biblioteket – Flask. Se denne serie af videoer for at få knowhow.

Skabelse af webapplikation

Du kan nu oprette din webapplikation ved hjælp af Python. Denne gratis vejledning giver dig en god trin for trin-vej til at opbygge et projekt ved hjælp af Django og Python. Tilmeld dig dette kursus og lær om Django. Django er en full-stack webramme, hvormed du kan oprette en end-to-end webapplikation i Python. Det bruger MVC-arkitekturen (Model-View-Controller) og ORM-arkitekturen (Object-Relational-Mapping) til dataadgang. Der findes biblioteker i Python, som fuldt ud understøtter ORM og opbygning af webapplikationssikkerhed.

Slutord

Det er alt, hvad der skal til for at blive en Python-profil. Vi startede fra den primære variabel og endte med at skabe en fuldgyldig webapplikation. Hvis du føler, at du er klar til at gå ud og stille op til interviews, så læs vores Python-interviewspørgsmål. Denne omfattende blog vil også give dig en glimrende idé om, hvilke bøger du har brug for som nybegynder eller avanceret Python-programmør.

Og vigtigst af alt, tjek nogle af disse bedste Python tutorials og gå videre, tilmeld dig til nogle. Der er både gratis og betalte tutorials, så du kan vælge dem, du ønsker at tilmelde dig.

People are also reading:

  • Bedste Python-kurser
  • Bedste Python-certificeringer
  • Top Python-projekter
  • Bedste Python IDE
  • Bedste Python-IDE
  • Bedste Python Frameworks
  • Bedste Python-kompilatorer
  • Bedste Python-fortolkere
  • Python-programmeringssprog
  • Hvordan kører man et Python-script?
  • NumPy Matrixmultiplikation

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.