Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Kootut vinkit

Olemme koonneet tÀlle sivulle yleisimpiÀ vinkkejÀ, jotka auttavat ratkaisemaan kurssilla toistuvia ongelmia. PÀivitÀmme sivua kurssin edetessÀ.


TehtĂ€vĂ€n jakaminen TMC:n “paste”-palvelussa

Jos tehtÀvÀ ei millÀÀn ratkea ja kaipaat apua, voit lÀhettÀÀ koodisi paste-palveluun, jonka kautta opettajat tai muut opiskelijat voivat perehtyÀ ratkaisuun ja antaa vinkkejÀ. LÀhettÀessÀsi ratkaisusi paste-palveluun, saat linkin, jonka kautta sinÀ ja muut voitte avata koodisi nettiselaimella. Paste-pelveluun voi lÀhettÀÀ tiedostoja ainakin kahdella eri tavalla:

Tapa 1:

Tiedoston lÀhettÀminen TMC:n paste-palveluun

Tapa 2:

Tiedoston lÀhettÀminen TMC:n paste-palveluun

TehtÀvÀstÀ puuttuu src-hakemisto

Jos avaat VS Code:n TMC-pluginin avulla tehtĂ€vĂ€n, jonka olet jo aikaisemmin ratkaissut mooc.fi:ssĂ€, saattaa tehtĂ€vĂ€hakemistosta puuttua src-hakemisto sekĂ€ sen sisĂ€ltĂ€mĂ€t tiedostot. Ongelma voi korjaantua klikkaamalla tehtĂ€vÀÀ hiiren kakkospainikkeella ja valitsemalla “Download old submission”. Voit myös valita, haluatko tehdĂ€ nykyisestĂ€ versiosta kopion TMC-palvelimelle, mikĂ€ tuskin on tarpeen hakemiston puuttumisen vuoksi.

Download old submission

“An invalid Python interpreter is selected” tai “Exited(9009)”

MikĂ€li VS Code varoittaa ongelmasta Python-tulkin kanssa tai TMC-laajennos kaatuu “Runtime Error”-virheeseen koodilla 9009, eivĂ€t VS Code ja TMC löydĂ€ Python-asennustasi.

TÀmÀ johtuu tyypillisesti siitÀ, ettÀ Python ei joko ole asennettuna tai vaihtoehtoisesti Python-komentoa ei löydy kÀyttöjÀrjestelmÀn PATH-muuttujasta:

“PATH is an environment variable on Unix-like operating systems, DOS, OS/2, and Microsoft Windows, specifying a set of directories where executable programs are located. In general, each executing process or user session has its own PATH setting.”

https://en.wikipedia.org/wiki/PATH_(variable)

Windows-asennusohjelmassa PATH-muuttujan asettaminen onnistuu yksinkertaisesti lisÀÀmĂ€llĂ€ rasti asennusohjelmassa ruutuun “Add python.exe to PATH”:

Add python.exe to PATH

Ohjelmasi ei TMC:n mukaan tulosta mitÀÀn tai kysy syötteitÀ

TehtÀvissÀ, joissa ei erikseen pyydetÀ funktioiden toteuttamista, mitÀÀn koodia ei tule sijoittaa if __name__ == "__main__"-lohkoon.

mooc.fi

Testi jÀÀ jumiin ja saat virheen “test timed out”

Ohjelmasi todennÀköisesti pyytÀÀ syötettÀ, jota ei tulisi tehtÀvÀnannon mukaan pyytÀÀ. TÀstÀ johtuen ohjelmasi jÀÀ odottamaan syötettÀ, jota TMC:n testit eivÀt anna. Lopulta TMC keskeyttÀÀ testit aikakatkaisun avulla.

Tarkasta ettÀ koodissa ei ole ylimÀÀrÀisiÀ input-kÀskyjÀ. Tarvittaessa siirrÀ ohjelmaa testaavat tehtÀvÀnannon ulkopuoliset koodit if __name__ == "__main__"-lohkon sisÀÀn.

Kattavampi testiraportti suorittamalla testit komentorivillÀ

Jos tehtĂ€vĂ€n tarkastaminen epĂ€onnistuu virheeseen, kuten “funktiota ei löydy”, on ongelman todellinen syy mahdollisesti ohjelmasi kaatuminen odottamattomasti. TMC-laajennoksen kĂ€yttöliittymĂ€ ei nĂ€ytĂ€ tarkkoja virheilmoituksia, mutta saat virheen nĂ€kyviin suorittamalla tehtĂ€vĂ€n testit komentorivillĂ€.

Testit tulee suorittaa halutun tehtÀvÀn ylÀhakemistossa, eli ei src-hakemiston alla. Suorita Python-asennuksestasi riippuen komento python3 -m tmc tai py -m tmc.

python3 -m tmc

MikÀli testit epÀonnistuvat, saat todennÀköisesti tarkemman virheilmoituksen, jonka perusteella voit tehdÀ korjauksia.

SSL-virheet tehtĂ€vĂ€ssĂ€ “Kurssien tilastot”

TehtÀvÀssÀ kurssien tilastot moni opiskelija törmÀÀ SSL-sertifikaattivirheeseen. TÀmÀ johtuu studies.cs.helsinki.fi-palvelimen sertifikaatista.

Voitte kiertÀÀ sertifikaattiongelmia vaihtamalla domainin studies.cs.helsinki.fi tilalle python-ohjelmointi.github.io. Muuten osoitteet ovat samat ja tehtÀvÀ toteutetaan aivan samalla tavalla kuin ohjeistettu. KÀyttÀkÀÀ siis vain nÀitÀ osoitteita: https://python-ohjelmointi.github.io/stats-mock/api/courses/ ja https://python-ohjelmointi.github.io/stats-mock/api/courses/****/stats.

NÀmÀ tiedostot ovat Helsingin yliopiston esimerkkidataa.

TMC-laajennoksen kÀynnistys Windowsissa

Jos kohtaat seuraavan ongelman TMC-laajennoksen kÀynnistyksessÀ, kokeile mÀÀritellÀ laajennoksille ja kÀyttÀjÀn datalle kansiot, joihin TMC-laajennoksella on varmasti kirjoitusoikeus.

[INFO] Starting moocfi.test-my-code in "production" mode.
[INFO] Visual Studio Code version: 1.56.2
[INFO] moocfi.test-my-code version: 2.1.0
[INFO] Currently open workspace: undefined
[INFO] Platform win32 Arch x64
[INFO] Run: "c:\\VSCODE\\settings\\User\\globalStorage\\moocfi.test-my-code\\cli\\tmc-langs-cli-x86_64-pc-windows-msvc-0.21.0-beta-4.exe" "--client-name" "vscode_plugin" "--client-version" "2.1.0" "core" "logged-in"
[ERROR] Failed to check if authenticated:

Kansiot voidaan mÀÀritellÀ VS Coden kÀynnistyksessÀ --extensions-dir- ja --user-data-dir-parametreilla. Luo itsellesi uusi pikakuvake Code.exe-tiedostoon esimerkiksi seuraavilla parametreilla:

ASENNUSHAKEMISTO\Code.exe --extensions-dir=C:\vscode\extensions --user-data-dir=C:\vscode\settings

Voit korvata yllÀ olevassa komennossa esiintyvÀt C:\vscode\-hakemistot vapaasti valitsemillasi tyhjillÀ hakemistoilla.