Turtle er et Python-bibliotek, der bruges til at lave grafik, billeder og spil. Den er udviklet af Wally Feurzeig, Seymour Parpet og Cynthina Slolomon i 1967. Det var en del af det originale Logo-programmeringssprog.
Logoprogrammeringssproget var populært blandt børnene, fordi det sætter os i stand til at tegne attraktive grafer til skærmen på den enkle måde. Det er som en lille genstand på skærmen, som kan bevæge sig efter den ønskede position. På samme måde kommer skildpaddebiblioteket med den interaktive funktion, der giver fleksibiliteten til at arbejde med Python.
I denne tutorial lærer vi de grundlæggende begreber i skildpaddebiblioteket, hvordan man sætter skildpadden op på en computer, programmering med Python-skildpaddebiblioteket, få vigtige skildpaddekommandoer og udvikle et kort, men attraktivt design ved hjælp af Python-skildpaddebiblioteket.
arrays java
Introduktion
Turtle er et forudinstalleret bibliotek i Python, der ligner det virtuelle lærred, hvor vi kan tegne billeder og attraktive former. Det giver skærmpennen, som vi kan bruge til at tegne.
Det skildpadde Biblioteket er primært designet til at introducere børn til programmeringsverdenen. Ved hjælp af Turtles bibliotek kan nye programmører få en idé om, hvordan vi kan programmere med Python på en sjov og interaktiv måde.
Det er gavnligt for børnene og for den erfarne programmør, fordi det giver mulighed for at designe unikke former, attraktive billeder og forskellige spil. Vi kan også designe minispil og animation. I det kommende afsnit lærer vi forskellige funktioner i skildpaddebiblioteket.
Kom godt i gang med skildpadde
Før vi arbejder med skildpaddebiblioteket, skal vi sikre os de to vigtigste ting at lave programmering.
Skildpadden er indbygget i biblioteket, så vi behøver ikke at installere separat. Vi skal bare importere biblioteket til vores Python-miljø.
Python-skildpaddebiblioteket består af alle vigtige metoder og funktioner, som vi skal bruge for at skabe vores design og billeder. Importer skildpaddebiblioteket ved hjælp af følgende kommando.
import turtle
Nu har vi adgang til alle metoder og funktioner. Først skal vi oprette et dedikeret vindue, hvor vi udfører hver tegnekommando. Vi kan gøre det ved at initialisere en variabel for det.
s = turtle.getscreen()
Det vil ligne et billede ovenfor, og den lille trekant i midten af skærmen er en skildpadde. Hvis skærmen ikke vises i dit computersystem, skal du bruge nedenstående kode.
Eksempel -
import turtle # Creating turtle screen s = turtle.getscreen() # To stop the screen to display turtle.mainloop()
Produktion:
Skærmen samme som lærredet og skildpadden fungerer som en kuglepen. Du kan flytte skildpadden for at designe den ønskede form. Skildpadden har visse foranderlige funktioner såsom farve, hastighed og størrelse. Det kan flyttes til en bestemt retning og bevæge sig i den retning, medmindre vi fortæller det andet.
I næste afsnit lærer vi at programmere med Python-skildpaddebiblioteket.
Programmering med skildpadde
Først skal vi lære at flytte skildpadden i alle retninger, som vi vil. Vi kan tilpasse pennen som skildpadde og dens miljø. Lad os lære de par kommandoer at udføre et par specifikke opgaver.
Skildpadden kan flyttes i fire retninger.
- Frem
- Baglæns
- Venstre
- Højre
Skildpaddebevægelse
Skildpadden kan bevæge sig frem og tilbage i den retning, den vender. Lad os se følgende funktioner.
Eksempel - 3:
import turtle # Creating turtle screen t = turtle.Turtle() # To stop the screen to display t.forward(100) turtle.mainloop()
Produktion:
Eksempel - 2:
import turtle # Creating turtle screen t = turtle.Turtle() # Move turtle in opposite direction t.backward(100) # To stop the screen to display turtle.mainloop()
Produktion:
Eksempel - 3:
import turtle # Creating turtle screen t = turtle.Turtle() t.heading() # Move turtle in opposite direction t.right(25) t.heading() # To stop the screen to display turtle.mainloop()
Produktion:
Eksempel -
import turtle # Creating turtle screen t = turtle.Turtle() t.heading() # Move turtle in left t.left(100) t.heading() # To stop the screen to display turtle.mainloop()
Produktion:
Skærmen er i første omgang opdelt i fire kvadranter. Skildpadden er placeret i begyndelsen af programmet er (0,0) kendt som Hjem.
Eksempel -
import turtle # Creating turtle screen t = turtle.Turtle() # Move turtle with coordinates t.goto(100, 80) # To stop the screen to display turtle.mainloop()
Produktion:
Tegning af en form
Vi diskuterede skildpaddens bevægelse. Nu lærer vi at gå videre til at lave den faktiske form. Først tegner vi polygon da de alle består af rette linjer forbundet i de bestemte vinkler. Lad os forstå følgende eksempel.
Eksempel -
t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100)
Det vil se ud som det følgende billede.
Produktion:
Vi kan tegne enhver form ved hjælp af skildpadden, såsom et rektangel, trekant, firkant og mange flere. Men vi skal passe på at koordinere, mens vi tegner rektanglet, fordi alle fire sider ikke er ens. Når vi har tegnet rektanglet, kan vi endda prøve at skabe andre polygoner ved at øge antallet af sider.
Tegning af forudindstillede figurer
Antag, at du vil tegne en cirkel . Hvis du forsøger at tegne det på samme måde, som du tegnede firkanten, ville det være ekstremt kedeligt, og du skulle bruge meget tid på kun den ene form. Heldigvis giver Python-skildpaddebiblioteket en løsning på dette. Du kan bruge en enkelt kommando til at tegne en cirkel.
Cirklen tegnes med den givne radius. Udstrækningen bestemmer, hvilken del af cirklen der tegnes, og hvis udstrækningen ikke er angivet eller ingen, så tegn hele cirklen. Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle screen t = turtle.Turtle() t.circle(50) turtle.mainloop()
Produktion:
Vi kan også tegne en prik, som også er kendt som en udfyldt cirkel. Følg den givne metode for at tegne en udfyldt cirkel.
Eksempel -
import turtle # Creating turtle screen t = turtle.Turtle() t.dot(50) turtle.mainloop()
Produktion:
Antallet vi har passeret i prik() funktion er diameteren af prikken. Vi kan øge og mindske størrelsen af prikken ved at ændre dens diameter.
Indtil videre har vi lært skildpaddens bevægelse og design de forskellige former. I de næste par afsnit lærer vi tilpasningen af skildpadden og dens miljø.
Ændring af skærmfarve
Som standard åbnes skildpaddeskærmen med den hvide baggrund. Vi kan dog ændre skærmens baggrundsfarve ved hjælp af følgende funktion.
Eksempel -
import turtle # Creating turtle screen t = turtle.Turtle() turtle.bgcolor('red') turtle.mainloop()
Produktion:
Vi har passeret en rød farve. Vi kan også erstatte det med en hvilken som helst farve, eller vi kan bruge hex-koden til at bruge forskellige kode til vores skærm.
Tilføjelse af billede til baggrunden
På samme måde som skærmens baggrundsfarve kan vi tilføje baggrundsbilledet ved hjælp af følgende funktion.
Eksempel -
import turtle # Creating turtle turtle t = turtle.Turtle() turtle.bgpic() turtle.bgpic(r'C:UsersDEVANSH SHARMADownloadsperson.webp') turtle.bgpic() turtle.mainloop()
Ændring af billedstørrelse
Vi kan ændre billedstørrelsen ved hjælp af skærmstørrelse() fungere. Syntaksen er angivet nedenfor.
Syntaks -
turtle.screensize(canvwidth = None, canvheight = None, bg = None)
Parameter - Det kræver tre parametre.
Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle turtle t = turtle.Turtle() turtle.screensize() turtle.screensize(1500,1000) turtle.screensize() turtle.mainloop()
Produktion:
Ændring af skærmtitel
Nogle gange ønsker vi at ændre titlen på skærmen. Som standard viser den Python tutorial grafik . Vi kan gøre det personligt som f.eks 'Mit første skildpaddeprogram' eller 'Tegne form med Python' . Vi kan ændre titlen på skærmen ved hjælp af følgende funktion.
turtle.Title('Your Title')
Lad os se eksemplet.
eksempel på brugernavn
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() turtle.title('My Turtle Program') turtle.mainloop()
Produktion:
Du kan ændre skærmtitlen efter præference.
Ændring af pennens størrelse
Vi kan øge eller mindske skildpaddens størrelse i henhold til kravet. Nogle gange har vi brug for tykkelse i pennen. Vi kan gøre dette ved at bruge følgende eksempel.
Eksempel -
import turtle # Creating turtle turtle t = turtle.Turtle() t.pensize(4) t.forward(200) turtle.mainloop()
Produktion:
Som vi kan se på billedet ovenfor, er pennen fire gange den oprindelige størrelse. Vi kan bruge det til at tegne linjer i forskellige størrelser.
Pen farvekontrol
Som standard, når vi åbner en ny skærm, kommer skildpadden med den sorte farve og tegner med sort blæk. Vi kan ændre det efter de to ting.
- Vi kan ændre farven på skildpadden, som er en fyldfarve.
- Vi kan ændre pennens farve, hvilket dybest set en ændring af omridset eller blækfarven.
Vi kan også ændre både penfarve og skildpaddefarve, hvis vi ønsker det. Vi foreslår at øge størrelsen af skildpadden, så ændringer i farven kan være tydeligt synlige. Lad os forstå følgende kode.
Eksempel -
import turtle # Creating turtle turtle t = turtle.Turtle() # Increase the turtle size t.shapesize(3,3,3) # fill the color t.fillcolor('blue') # Change the pen color t.pencolor('yellow') turtle.mainloop()
Produktion:
Indtast følgende funktion for at ændre farven på begge.
Eksempel - 2:
import turtle # Creating turtle turtle t = turtle.Turtle() t.shapesize(3,3,3) # Chnage the color of both t.color('green', 'red') t.forward(100) turtle.mainloop()
Produktion:
Forklaring:
I ovenstående kode er den første farve en penfarve og den anden er en fyldfarve.
Skildpadde udfyld billedet
Farver gør et billede eller former meget attraktive. Vi kan fylde figurer med forskellige farver. Lad os forstå følgende eksempel for at tilføje farve til tegningerne. Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle turtle t = turtle.Turtle() t.shapesize(3,3,3) t.begin_fill() t.fd(100) t.lt(120) t.fd(100) t.lt(120) t.fd(100) t.end_fill() turtle.mainloop()
Produktion:
Forklaring:
Når programmet kører, tegnede det først trekanten og fyldte den derefter med den sorte farve som ovenstående output. Vi har brugt start_fill() metode, som indikerer, at vi vil tegne en lukket form, der skal udfyldes. Så bruger vi .end_fill(), hvilket indikerer at vi er færdige med den skabende form. Nu kan den fyldes med farve.
Ændring af skildpaddens form
Som standard er skildpaddens form trekantet. Vi kan dog ændre skildpaddens form og dette modul giver mange former til skildpadden. Lad os forstå følgende eksempel.
Eksempel -
python tuple sorteret
import turtle # Creating turtle turtle t = turtle.Turtle() t.shape('turtle') # Change to arrow t.shape('arrow') # Chnage to circle t.shape('circle') turtle.mainloop()
Produktion:
Vi kan ændre skildpaddens form efter behov. Disse former kan være en firkant, trekant, klassisk, skildpadde, pil og cirkel. Det klassisk er skildpaddens oprindelige form.
Ændring af pennens hastighed
Skildpaddens hastighed kan ændres. Generelt bevæger den sig med en moderat hastighed over skærmen, men vi kan øge og mindske dens hastighed. Nedenfor er metoden til at ændre skildpaddens hastighed.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() t.speed(3) t.forward(100) t.speed(7) t.forward(100) turtle.mainloop()
Produktion:
Skildpaddens hastighed kan variere heltalværdier i området 0…10. Intet argument er vedtaget i fart() funktion, returnerer den den aktuelle hastighed. Hastighedsstrenge er knyttet til hastighedsværdier som følger.
0 | Hurtigste |
10 | Hurtig |
6 | Normal |
3 | Langsom |
1 | Langsomst |
Bemærk - Hvis hastigheden er tildelt nul, betyder det, at der ikke vil finde nogen animation sted.
turtle.speed() turtle.speed('normal') turtle.speed() turtle.speed(9) turtle.speed()
Tilpasning på én linje
Antag, at vi ønsker flere ændringer i skildpadden; vi kan gøre det ved kun at bruge én linje. Nedenfor er et par karakteristika af skildpadden.
- Penfarven skal være rød.
- Fyldfarven skal være orange.
- Penstørrelsen skal være 10.
- Pennehastigheden skal være 7
- Baggrundsfarven skal være blå.
Lad os se følgende eksempel.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() t.pencolor('red') t.fillcolor('orange') t.pensize(10) t.speed(7) t.begin_fill() t.circle(75) turtle.bgcolor('blue') t.end_fill() turtle.mainloop()
Produktion:
Vi brugte kun en linje og ændrede skildpaddens egenskaber. For at lære om denne kommando, kan du lære af bibliotekets officielle dokumentation .
Skift pennens retning
Som standard peger skildpadden til højre på skærmen. Nogle gange kræver vi at flytte skildpadden til den anden side af selve skærmen. For at opnå dette kan vi bruge penup() metode. Det pendown() funktionen bruges til at begynde at tegne igen. Overvej følgende eksempel.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() t.fd(100) t.rt(90) t.penup() t.fd(100) t.rt(90) t.pendown() t.fd(100) t.rt(90) t.penup() t.fd(100) t.pendown() turtle.mainloop()
Produktion:
Som vi kan se i ovenstående output, har vi fået to parallelle linjer i stedet for en firkant.
Rydningsskærm
Vi har dækket de fleste designkoncepter for skildpadden. Nogle gange har vi brug for en klar skærm for at tegne flere designs. Vi kan gøre det ved hjælp af følgende funktion.
t.clear()
Ovenstående metode vil rydde skærmen, så vi kan tegne flere designs. Denne funktion fjerner kun de eksisterende designs eller former uden at foretage ændringer i variable. Skildpadden forbliver i samme position.
Nulstilling af miljøet
Vi kan også nulstille den nuværende funktion ved hjælp af nulstillingsfunktionen. Det genopretter tårnets indstilling og rydder skærmen. Vi skal blot bruge følgende funktion.
t.reset
Alle opgaver vil blive fjernet og skildpadden tilbage til sin udgangsposition. Standardindstillingerne for skildpadden, såsom farve, størrelse og form og andre funktioner vil blive gendannet.
computer opfundet år
Vi har lært det grundlæggende grundlæggende i skildpaddeprogrammering. Nu vil vi diskutere et par væsentlige og avancerede koncepter for skildpaddebiblioteket.
Efterlad et stempel
Vi kan efterlade skildpaddens stempel på skærmen. Stemplet er intet andet end et aftryk af skildpadden. Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() t.stamp() t.fd(200) t.stamp() t.fd(100) turtle.mainloop()
Produktion:
Hvis vi udskriver frimærke() metode, vil den vise et tal, som ikke er andet end en skildpaddes placering eller stempel-id. Vi kan også fjerne et bestemt stempel ved at bruge følgende kommando.
t.clearstamp(8) # 8 is a stamp location.
Kloning af en skildpadde
Nogle gange leder vi efter den multiple skildpadde for at designe en unik form. Det giver mulighed for at klone den nuværende arbejdende skildpadde ind i miljøet, og vi kan flytte begge skildpadder på skærmen. Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() c = t.clone() t.color('blue') c.color('red') t.circle(20) c.circle(30) for i in range(40, 100, 10): c.circle(i) turtle.mainloop()
Produktion:
Forklaring:
I ovenstående kode klonede vi skildpadden til c-variablen og kaldte cirkelfunktionen. Først tegner den den blå cirkel og tegner derefter de ydre cirkler baseret på for loop-betingelserne.
I det næste afsnit vil vi diskutere, hvordan vi kan bruge Python-betingede og loop-udsagn til at skabe design ved hjælp af skildpadden.
Skildpaddeprogrammering ved hjælp af sløjfer og betingede erklæringer
Vi har lært de grundlæggende og avancerede koncepter i skildpaddebiblioteket indtil videre. Det næste trin er at udforske disse begreber med Pythons loops og betingede udsagn. Det vil give os en praktisk tilgang, når det kommer til en forståelse af disse begreber. Før vi går videre, bør vi huske følgende begreber.
Lad os forstå følgende eksempler.
til sløjfer
I det foregående eksempel skrev vi flere gentagne linjer i vores kode. Her vil vi implementere oprette et firkantet program ved hjælp af for loop. For eksempel -
Eksempel:
t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90)
Vi kan gøre det kortere ved at bruge en for-løkke. Kør nedenstående kode.
Eksempel
import turtle # Creating turtle t = turtle.Turtle() for i in range(4): t.fd(100) t.rt(90) turtle.mainloop()
Produktion:
Forklaring
I ovenstående kode gentog for loop koden, indtil den nåede til tæller 4. I'et er som en tæller, der starter fra nul og bliver ved med at stige med én. Lad os forstå ovenstående løkkeudførelse trin for trin.
- I den første iteration, i = 0, bevæger skildpadden sig fremad med 100 enheder og drejer derefter 90 grader til højre.
- I den anden iteration, i = 1, bevæger skildpadden sig fremad med 100 enheder og drejer derefter 90 grader til højre.
- I den tredje iteration, i = 2, bevæger skildpadden sig fremad med 100 enheder og drejer derefter 90 grader til højre.
- I den tredje iteration, i = 3, bevæger skildpadden sig fremad med 100 enheder og drejer derefter 90 grader til højre.
Efter at have gennemført iterationen, vil skildpadden springe ud af løkken.
mens sløjfer
Det bruges til at køre en kodeblok, indtil en betingelse er opfyldt. Koden vil blive afsluttet, når den finder en falsk tilstand. Lad os forstå følgende eksempel.
Eksempel -
import turtle # Creating turtle t = turtle.Turtle() n=10 while n <= 60: t.circle(n) n="n+10" turtle.mainloop() < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-24.webp" alt="Python Turtle Programming"> <p>As we can see in the output, we draw multiple circles using the while loop. Every time the loop executes the new circle will be larger than the previous one. The n is used as a counter where we specified the value of n increase in the each iteration. Let's understand the iteration of the loop.</p> <ul> <li>In the first iteration, the initial value of n is 10; it means the turtle draw the circle with the radius of 10 units.</li> <li>In the second iteration, the value of n is increased by 10 + 10 = 20; the turtle draws the circle with the radius of 20 units.</li> <li>In the second iteration, the value of n is increased by 20 + 10 = 30; the turtle draws the circle with the radius of 30 units.</li> <li>In the second iteration, the value of n is increased by 30 + 10 = 40; the turtle draws the circle with the radius of 30 units.</li> </ul> <h2>Conditional Statement</h2> <p>The conditional statement is used to check whether a given condition is true. If it is true, execute the corresponding lines of code. Let's understand the following example.</p> <p> <strong>Example</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() n = 40 if n<=50: t.circle(n) else: t.forward(n) t.backward(n-10) turtle.mainloop() < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-25.webp" alt="Python Turtle Programming"> <p> <strong>Explanation</strong> </p> <p>In the above program, we define the two outcomes based on user input. If the entered number is less of equal than the 50 means draw the circle otherwise else part. We gave the 40 as input so that if block got executed and drew the circle.</p> <p>Now let's move to see a few cool designs using the turtle library.</p> <h3>Attractive Designs using Python Turtle Library</h3> <p>We have learned basic and advance concepts of Python turtle library. We explain every possible feature of this library. By using its function, we can design games, unique shapes and many more things. Here, we mention a few designs using the turtle library.</p> <h3>Design -1 Circle Spiro graph</h3> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() turtle.bgcolor('black') turtle.pensize(2) turtle.speed(0) while (True): for i in range(6): for colors in ['red', 'blue', 'magenta', 'green', 'yellow', 'white']: turtle.color(colors) turtle.circle(100) turtle.left(10) turtle.hideturtle() turtle.mainloop() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-26.webp" alt="Python Turtle Programming"> <p>The turtle will move for the infinite time because we have used the infinite while loop. Copy the above code and see the magic.</p> <h3>Design - 2: Python Vibrate Circle</h3> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') t.pencolor('red') a = 0 b = 0 t.speed(0) t.penup() t.goto(0,200) t.pendown() while(True): t.forward(a) t.right(b) a+=3 b+=1 if b == 210: break t.hideturtle() turtle.done() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-27.webp" alt="Python Turtle Programming"> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') turtle.pensize(2) # To design curve def curve(): for i in range(200): t.right(1) t.forward(1) t. speed(3) t.color('red', 'pink') t.begin_fill() t.left(140) t.forward(111.65) curve() t.left(120) curve() t.forward(111.65) t.end_fill() t.hideturtle() turtle.mainloop() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-28.webp" alt="Python Turtle Programming"> <p>In the above code, we define the curve function to create curve to screen. When it takes the complete heart shape, the color will fill automatically. Copy the above code and run, you can also modify it by adding more designs.</p> <hr></=50:></pre></=>
Produktion:
Skildpadden vil bevæge sig i uendelig tid, fordi vi har brugt den uendelige mens-løkke. Kopier ovenstående kode og se magien.
Design - 2: Python Vibrate Circle
Kode
import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') t.pencolor('red') a = 0 b = 0 t.speed(0) t.penup() t.goto(0,200) t.pendown() while(True): t.forward(a) t.right(b) a+=3 b+=1 if b == 210: break t.hideturtle() turtle.done()
Produktion:
Kode
import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') turtle.pensize(2) # To design curve def curve(): for i in range(200): t.right(1) t.forward(1) t. speed(3) t.color('red', 'pink') t.begin_fill() t.left(140) t.forward(111.65) curve() t.left(120) curve() t.forward(111.65) t.end_fill() t.hideturtle() turtle.mainloop()
Produktion:
I ovenstående kode definerer vi kurvefunktionen for at skabe kurve til skærm. Når den tager hele hjerteformen, fyldes farven automatisk. Kopier ovenstående kode og kør, du kan også ændre den ved at tilføje flere designs.
=50:>=>