python/taitotalo: add practice scripts from today

TODO: pylint dislikes them
This commit is contained in:
Aminda Suomalainen 2024-05-02 17:55:16 +03:00
parent cf03f118e1
commit fac839f75c
Signed by: Mikaela
SSH Key Fingerprint: SHA256:CXLULpqNBdUKB6E6fLA1b/4SzG0HvKD19PbIePU175Q
9 changed files with 189 additions and 6 deletions

View File

@ -61,12 +61,13 @@ repos:
rev: v3.15.2
hooks:
- id: pyupgrade
args: [--py310-plus]
- repo: https://github.com/asottile/reorder-python-imports
rev: v3.12.0
hooks:
- id: reorder-python-imports
args: [--py310-plus]
args:
[--py310-plus]
# - repo: https://github.com/asottile/reorder-python-imports
# rev: v3.12.0
# hooks:
#- id: reorder-python-imports
#args: [--py310-plus]
- repo: https://github.com/asottile/add-trailing-comma
rev: v3.1.0
hooks:

View File

@ -0,0 +1,14 @@
root = true
[*]
# https://peps.python.org/pep-0008/#indentation
indent_style = space
indent_size = 4
max_line_length = 79
end_of_line = crlf
[*.md]
end_of_line = lf
[*.py]
profile = black

4
python/taitotalo/.gitattributes vendored Normal file
View File

@ -0,0 +1,4 @@
*.py text eol=crlf
.editorconfig text eol=crlf
.gitattributes text eol=crlf
*.md text eol=lf

15
python/taitotalo/main.py Normal file
View File

@ -0,0 +1,15 @@
"""
Tämä on ensimmäinen Taitotalossa kirjoitettu Python koodi koulutuspäivänä yksi. Se vain tulostaa asioita.
"""
# Ensimmäinen kommentti
print("Tervetuloa")
# toinen kommentti
print("esi" + "merkki")
luku1 = 5
luku2 = 7
summa = luku1 + luku2
print("Vastaus", summa)

10
python/taitotalo/main1.py Normal file
View File

@ -0,0 +1,10 @@
"""
Sovellus pyytää käyttäjältä nimen, sekä viestin ja tulostaa viestin kolmesti.
"""
# Pyydetään käyttäjältä nimi ja viesti, tallennetaan samannimisiin muuttujiin
nimi = input("Nimi: ")
viesti = input("Viesti: ")
# Tulostetaan nimi ja kolmesti viesti rivinvaihdolla. Lopuksi poistetaan rivinvaihto ja erotin tulostuksesta
print(nimi, " sanoo:\n", (viesti + "\n") * 3, end="", sep="")

13
python/taitotalo/main2.py Normal file
View File

@ -0,0 +1,13 @@
"""
Sovellus vertailee totuusarvoja (boolean)
"""
import datetime
tanaan = datetime.date.today()
vuosi = int(tanaan.year)
nimi = "Jussi"
print(vuosi)
print(vuosi == 2014)
print(vuosi is vuosi)

13
python/taitotalo/main3.py Normal file
View File

@ -0,0 +1,13 @@
"""
Sovellus tekee yksinkertaisen salasanatarkistuksen if:illä
"""
koodisana = "python"
print("Tervetuloa")
syote = input("Anna salasana: ")
if syote == koodisana:
print("Matka voi alkaa")
else:
print("Yritä uudelleen")

28
python/taitotalo/main4.py Normal file
View File

@ -0,0 +1,28 @@
"""
Sovellus kysyy käyttäjän ikää, kertoo alle 18 heidän olevan alaikäinen, 18-65 aikuinen ja yli 65 seniori.
"""
# Tuo sys -kirjasto, jotta voimme poistua virhekoodiin.
import sys
# Odotetaan käyttäjän mahdollisesti pyrkivän syöttämään muutakin kuin numeroita ja varaudutaan asiaan
try:
# Tallennetaan kokonaislukuna käyttäjältä pyydetty ikä
ika = int(input("Mikä on ikäsi? "))
# Annetaan käyttäjäystävällinen virheilmoitus ja poistutaan virhekoodilla, jos käyttäjä ei syöttänyt numeroita
except ValueError:
print("Syötä ikäsi numeroina!")
sys.exit(1)
# Aloitetaan kokeilemalla onko käyttäjä alle 18.
if ika < 18:
print("Olet alaikäinen")
# Jos käyttäjä ei ollut alaikäinen, varmistetaan onko hän 18 ja onko hän alle 65.
elif (ika >= 18) and (ika < 65):
print("Olet aikuinen")
# Mikäli ikä on 65 tai yli, käyttäjä on seniori.
elif ika >= 65:
print("Olet seniori")
# Muussa tapauksessa tulostetaan virheilmoitus.
else:
print("Jokin meni pieleen. Yritä uudelleen tai ilmoita ylläpidolle.")

85
python/taitotalo/main5.py Normal file
View File

@ -0,0 +1,85 @@
# Tuodaan turtle -kirjasto
import random
import turtle
# Satunnaislukuja
# ikkkuna = turtle.Screen()
# Asetetaan turtlen väriksi "meripihka"
turtle.pencolor("#002F6C")
# Asetetaan taustaväriksi "AMOLED" musta
# turtle.bgcolor("#000000")
# valkoinen
turtle.bgcolor("#FFFFFF")
# Asetetaan kilpikonnan muoto
turtle.shape("turtle")
# Näytetään kilpikonna liikkumatta
turtle.showturtle()
# koko = 100
# roikealle = 250
# rvasemmalle = 250
# rylos = 100
# Aletaampa liikkua
# Risti oikealle
# turtle.forward(roikealle)
# turtle.left(90)
# Risti ylös
# turtle.forward(rylos)
# turtle.left(90)
# Risti vasemmalle
# turtle.forward(rvasemmalle)
# turtle.right(90)
# Risti ylös
# turtle.forward(rylos)
# turtle.forward(50)
# Vasen
# turtle.left(90)
# turtle.forward(50)
# Alas
# turtle.left(90)
# turtle.forward(rylos)
# Piirretään suorakulmio
vaaka = 300
pysty = 200
#
turtle.forward(vaaka)
turtle.left(90)
turtle.forward(pysty)
#
turtle.left(90)
turtle.forward(vaaka)
#
turtle.left(90)
turtle.forward(pysty)
turtle.left(90)
# Piirretään risti
turtle.forward(vaaka / 2)
turtle.left(90)
turtle.forward(pysty / 3)
turtle.right(90)
turtle.forward(vaaka / 3)
turtle.left(90)
turtle.forward(vaaka / 5)
turtle.left(90)
turtle.forward(vaaka / 3)
turtle.right(90)
turtle.forward(vaaka / 3)
# turtle.forward(pysty / 3)
# Pidetään ikkuna auki
turtle.mainloop()