lotto

Elikkäs tuossa python gui aiheessa asiaa sivusinkin toisessa postauksessani, mutta kysynpä nyt eri otsakkeessa. Seuraava esimerkki on suoraan kirjasta, ilman guita siis, mutta ei toimi (tämä foorumi poistaa sisennykset btw):

---------

# -*- coding: cp1252 -*-

import random

numerot = []

while True:
if len(numerot) == 7:
break
luku = random.randint(1,39)
if luku not in numerot:
numerot.append(luku)
   
numerot.sort()
print("Ohjelma arpoi seuraavat luvut:")
   
for i in numerot:
print(i, end ´ ´)

--------

Kun tämän ajaa IDLE editorissa Run => Run module, tulee virheilmoitus: invalid character in identifier

jakoodissa punaisena merkitään tuo lopun "hipsujen" välinen välilyönti, ei tietty auta ilman välikään, eikä sekän että yrittänyt hipsujen paikalle muita vastaavankaltaisia merkkejä, ja kirjassa merkittynä nimenomaan noin.

Tällä tulee tietty olemaan vaikutusta jatkossakin kun pidemmälti opiskelee, joten mikäköhän tuon tässä yksinkertaisessa esimerkissä mahtaa aheuttaa?
411547
Äänestä

Muut lukivat myös

Vastaukset 41

Vanhimmat

Käänsin ton pikasesti VB.NET 2008:lle GUI-softaksi ja logiikkahan on ihan ok. Windows forms projekti, formille label nimeltään LabelTulokset ja toi koodi vaikka buttonin klikin sisään tai formian loadiin ja siinä se on, valmis graafinen käyttöliittymä lottoarvontasoftaan koodit logiikkaan. Kai pyyttoniin saa vastaavan editorin jolla ton tekee. Kannattaa koittaa semmosella. Kertoo varmaan suoraan senkin, mikä sulla menee nyt pieleen tossa. Komentorivillä ei nykysten kannata vääntää pahemmin mitään ellei oo pakko. Menee opettelu turhan hankalaksi ja työlääksi.

Ei ton VB.NET:n koodi eroa paljon Pyyttonista. Apstraktiotasot tossakin aika samaa luokkaa. Kiva huomio.

Dim numerot As List(Of Integer) = New List(Of Integer)

Do
Dim r As New Random()
Dim luku As Integer = r.Next(1, 39)
If numerot.Contains(luku) Then Continue Do
numerot.Add(luku)
If numerot.Count >= 7 Then Exit Do
Loop
numerot.Sort()
LabelTulokset.Text = "Ohjelma arpoi seuraavat luvut:"
For Each luku In numerot
LabelTulokset.Text = luku.ToString " "
Next

Äänestä
  • Mitä helvettiä se joku Visual Basic sitten auttaa Python -ohjelmoinnissa?

    Äänestä

  • Ensisijaisena ongelmana nyt on se, että tuo ei siis toimi edes tekstipohjaisena, kuten yllä oleva esimerkki onkin. GUI version tuosta jo teinkin aiemmin kuvailemallasi tavalla, eli napin klikkiin tietty. Ongelmana vaan tuo kun ei toi edes tekstipohjaisena niin ei gui asiaa muuta niiltäosin. Eli mikähän noissa "hipsuissa" nyt mättää kun ohjeen mukaisesti tuo tehtynä. Niin ja en tiedä onko saatavissa pakettia missä GUI:n voisi rakenta VB tyyliin. Nyt käytän notepad :aa ja koeajon IDLEllä jotta näen missä mennään vikaan.

    Äänestä

  • m-kar kirjoitti:

    Mitä helvettiä se joku Visual Basic sitten auttaa Python -ohjelmoinnissa?

    Varmaan se mun juttu auttaa enempi kuin pyyttonikoodaajien täydellinen hiljaisuus kun joku kysyy jotain.

    Toisaalta eiköhän se oo ihan hyvä pyyttoniporukallekin tietää siitä, millasta tasoa ja helppoutta muilla kielillä vastaavaa toteutettaessa odotetaan. Jos ja kun toi käänty pyyttonista veepeenettiin melkeen yks yhteen rivi riviltä niin eiköhän sitä muutakin vastaavuutta voi vaatia. IDE ja muu kuntoon siellä pyyttonipäässäkin ettei semmosten kanssa mee aikaa tuhratessa.

    Äänestä

  • siis... kirjoitti:

    Ensisijaisena ongelmana nyt on se, että tuo ei siis toimi edes tekstipohjaisena, kuten yllä oleva esimerkki onkin. GUI version tuosta jo teinkin aiemmin kuvailemallasi tavalla, eli napin klikkiin tietty. Ongelmana vaan tuo kun ei toi edes tekstipohjaisena niin ei gui asiaa muuta niiltäosin. Eli mikähän noissa "hipsuissa" nyt mättää kun ohjeen mukaisesti tuo tehtynä. Niin ja en tiedä onko saatavissa pakettia missä GUI:n voisi rakenta VB tyyliin. Nyt käytän notepad :aa ja koeajon IDLEllä jotta näen missä mennään vikaan.

    Ei oo pyyttonia tässä niin arvaan miten vois mennä.

    print(i, end ´ ´)
    print(i, end, ´ ´)

    Jompaa kumpaa noista vois koittaa, tai sitten katot meneeks peruslogiikka oikeen ja jätät hipsut pois eli

    print(i, end)

    Tai kai se menis vaan jommalla kummalla noinkin.

    print(i)
    print(i " ")

    Ei kai tossa ole siis kyse muusta kuin siitä miten formatoidaan se valmis tulos näytölle. Jos sillä ei oo kokeillessa niin merkitystä, niin logiikan saa kait katottuun muutenkin.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Varmaan se mun juttu auttaa enempi kuin pyyttonikoodaajien täydellinen hiljaisuus kun joku kysyy jotain.

    Toisaalta eiköhän se oo ihan hyvä pyyttoniporukallekin tietää siitä, millasta tasoa ja helppoutta muilla kielillä vastaavaa toteutettaessa odotetaan. Jos ja kun toi käänty pyyttonista veepeenettiin melkeen yks yhteen rivi riviltä niin eiköhän sitä muutakin vastaavuutta voi vaatia. IDE ja muu kuntoon siellä pyyttonipäässäkin ettei semmosten kanssa mee aikaa tuhratessa.

    "Toisaalta eiköhän se oo ihan hyvä pyyttoniporukallekin tietää siitä, millasta tasoa ja helppoutta muilla kielillä vastaavaa toteutettaessa odotetaan."

    Kun se nyt ei auta Pythonkoodissa pätkääkään.

    "IDE ja muu kuntoon siellä pyyttonipäässäkin ettei semmosten kanssa mee aikaa tuhratessa."

    Menee siinä VB:n kanssa enemmän aikaa tuhraamiseen että saa sitä laitettua softaan skriptikieleksi. Tee vaikka pelimoottori jollain C :lla ja siihen sitten VB:llä logiikan kirjoitus niin siinä voit sitten miettiä missä sitä tuhraamista on. Jostain IDE:istä lässyttäminen on ihan aiheetonta kun ohjelmoinnin opetellussa opetellaan _ohjelmoimaan_ eikä käyttämään IDE:ä.

    Joku C olisi malliesimerkki siitä miten IDE haittaa opettelua. Helposti menee linkkerin toimintaperiaatteen ymmärtäminen hämäräksi jos jollain IDE:llä leikkii eikä tällä tavalla opi siten ohjelmoimaan kunnolla. Pahimmassa tapauksessa tekisi täysin rikkinäistä koodia kun toimintaperiaate jää epäselväksi ja ei opi kirjoittamaan esikääntäjän direktiivejä.

    Onko sinulla joku missio päällä että neuvotaan jotain puutaheinää IDE:n käytöstä ja mainostetaan Visual Studiota, että varmasti kukaan ei oppisi ohjelmoimaan?

    Äänestä

  • m-kar kirjoitti:

    "Toisaalta eiköhän se oo ihan hyvä pyyttoniporukallekin tietää siitä, millasta tasoa ja helppoutta muilla kielillä vastaavaa toteutettaessa odotetaan."

    Kun se nyt ei auta Pythonkoodissa pätkääkään.

    "IDE ja muu kuntoon siellä pyyttonipäässäkin ettei semmosten kanssa mee aikaa tuhratessa."

    Menee siinä VB:n kanssa enemmän aikaa tuhraamiseen että saa sitä laitettua softaan skriptikieleksi. Tee vaikka pelimoottori jollain C :lla ja siihen sitten VB:llä logiikan kirjoitus niin siinä voit sitten miettiä missä sitä tuhraamista on. Jostain IDE:istä lässyttäminen on ihan aiheetonta kun ohjelmoinnin opetellussa opetellaan _ohjelmoimaan_ eikä käyttämään IDE:ä.

    Joku C olisi malliesimerkki siitä miten IDE haittaa opettelua. Helposti menee linkkerin toimintaperiaatteen ymmärtäminen hämäräksi jos jollain IDE:llä leikkii eikä tällä tavalla opi siten ohjelmoimaan kunnolla. Pahimmassa tapauksessa tekisi täysin rikkinäistä koodia kun toimintaperiaate jää epäselväksi ja ei opi kirjoittamaan esikääntäjän direktiivejä.

    Onko sinulla joku missio päällä että neuvotaan jotain puutaheinää IDE:n käytöstä ja mainostetaan Visual Studiota, että varmasti kukaan ei oppisi ohjelmoimaan?

    Meinaakkos nyt, ettei sun mielestäs Pyyttonilla sais tehtyä tota softaa yhtä helposti GUI-tasolle vai mistäs vetäsit hernettä nenukkiin?

    Jos muuten ite oot opetellut ohjelmoimaan joskus 80-luvulla aikana jolloin graafisia kehittimiä oli vähemmän ja niiden laatu mitä sattuu, niin ei se tarkota sitä, etteivät muut voisi opetella moderneja nykyaikasia systeemejä.

    Oon nähnyt ihan tarpeeksi porukkaa jolla into menee kun ympäristössä pitää muistaa ite ulkoa joka tekstinpätkän tarkka muoto ja paikka eikä apuja tuu mistään. Ei katos oo mitään syytä pakottaa opettelijoita elämään menneisyydessä kun ei niillä menneisyyden työkaluilla viitti pahemmin töitäkään tehä. Paljon mukavampaa harjotella oikeella työkalulla kun muinaismuistolla.

    Mä kato neuvon miten oppii ohjelmoimaan nykyaikasesti. En mainostele täällä historiallisia tapoja tehä juttuja kuten tää komentoriviä hakkaava linukkasakki.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Meinaakkos nyt, ettei sun mielestäs Pyyttonilla sais tehtyä tota softaa yhtä helposti GUI-tasolle vai mistäs vetäsit hernettä nenukkiin?

    Jos muuten ite oot opetellut ohjelmoimaan joskus 80-luvulla aikana jolloin graafisia kehittimiä oli vähemmän ja niiden laatu mitä sattuu, niin ei se tarkota sitä, etteivät muut voisi opetella moderneja nykyaikasia systeemejä.

    Oon nähnyt ihan tarpeeksi porukkaa jolla into menee kun ympäristössä pitää muistaa ite ulkoa joka tekstinpätkän tarkka muoto ja paikka eikä apuja tuu mistään. Ei katos oo mitään syytä pakottaa opettelijoita elämään menneisyydessä kun ei niillä menneisyyden työkaluilla viitti pahemmin töitäkään tehä. Paljon mukavampaa harjotella oikeella työkalulla kun muinaismuistolla.

    Mä kato neuvon miten oppii ohjelmoimaan nykyaikasesti. En mainostele täällä historiallisia tapoja tehä juttuja kuten tää komentoriviä hakkaava linukkasakki.

    "Meinaakkos nyt, ettei sun mielestäs Pyyttonilla sais tehtyä tota softaa yhtä helposti GUI-tasolle vai mistäs vetäsit hernettä nenukkiin?"

    Saahan sillä helposti GUI-softaa. Pythonilla kun tekee GTK-softaa niin voi sillä samalla Gladella tehdä sen käyttöliittymän ja tehdä softan Pythonille. Se mistä vedän hernettä nenukkiin on toi jatkuva lässyttäminen jostain IDE:istä joka helvetin viestissä niille jotka opettelee ohjelmoimaan. Kysyjä ei kysynyt millä IDE:llä se ohjelman tekee vaan sitä miksi se koodinpätkä ei toimi.

    "Jos muuten ite oot opetellut ohjelmoimaan joskus 80-luvulla aikana jolloin graafisia kehittimiä oli vähemmän ja niiden laatu mitä sattuu, niin ei se tarkota sitä, etteivät muut voisi opetella moderneja nykyaikasia systeemejä."

    Tyhmään päähäsi ei tunnu uppoavan millään, että tuollaiset oppimiset on ohjelmakohtaisia ja ohjelmoinnissa tarvitaan ymmärtää asia yleisellä tasolla. Ohjelmointivälineet vaihtuu kokoajan ja sitä ei opi ikinä ohjelmoimaan jos ei opettele perusteita. Toistaiseksi komentorivikäyttöliittymä on ainoa yleispätevä käyttöliittymä joka on yhdenmukainen joka paikassa ja erilaisia graafisia käyttöliittymiä samaan hommaan on tuhat. Opettelemalla homman komentorivillä, voi sitten vaivattomammin siirtyä eri GUI-ohjelmiin. Opettelemalla yhden GUI:n ollaan täysin pihalla seuraavan GUI:n kanssa koska perusteita ei osata.

    Homman näkee harvinaisen hyvin kun jotkut opettelee tietokoneen käyttöä tekemällä graafisella tekstinkäsittelyohjelmalla jotain tekstinpätkiä mutta opettelu menee jokseenkin täysin hukkaan koska eivät löydä tallentamiaan tiedostoja kiintolevyltä, tekstiäkään ei voi järkevästi editoida kun dokumentin rakenne on rikki ja sitten kun ostavat jonkun MS Office 2007:n missä on vähän erilainen käyttöliittymä, eivät osaa käyttää sitä yhtään.

    Ohjelmoinnissa perusteiden ymmärtäminen on vielä kriittisempää.

    ---

    Jos haluaisit opettaa nykyaikaisia tapoja, opettaisit funktionaalisia kieliä. Minkään _työkalun_ neuvominen EI OLE opettamista. Oppiminen tehdään asetetta korkeammalla tasolla.

    Mitä siitä autokoulusta tulisi jos ajamisen opettaminen olisi jonkun tietyn auton käyttöliittymän opettamista eikä liikennesääntöjä tai sitä perusfysiikkaa miten auto voi puskea tieltä pois. Ohjelmoinnissa homma on täysin sama.

    Eli ihan ensitöikseen ÄLÄ NEUVO MITÄÄN TYÖKALUA! Se on mainostamista eikä mitään opettamista. Neuvo sitä kieltä tai ongelmaa. Varoitan viimeisen kerran ja jatkossa ilmoitan kaikki työkalumainostukset ylläpidolle, työkalusta riippumatta. On nimittäin palstan sääntöjä vastaan eikä hyödytä eikä opeta kysyjää millään tavalla.

    Äänestä

  • m-kar kirjoitti:

    "Meinaakkos nyt, ettei sun mielestäs Pyyttonilla sais tehtyä tota softaa yhtä helposti GUI-tasolle vai mistäs vetäsit hernettä nenukkiin?"

    Saahan sillä helposti GUI-softaa. Pythonilla kun tekee GTK-softaa niin voi sillä samalla Gladella tehdä sen käyttöliittymän ja tehdä softan Pythonille. Se mistä vedän hernettä nenukkiin on toi jatkuva lässyttäminen jostain IDE:istä joka helvetin viestissä niille jotka opettelee ohjelmoimaan. Kysyjä ei kysynyt millä IDE:llä se ohjelman tekee vaan sitä miksi se koodinpätkä ei toimi.

    "Jos muuten ite oot opetellut ohjelmoimaan joskus 80-luvulla aikana jolloin graafisia kehittimiä oli vähemmän ja niiden laatu mitä sattuu, niin ei se tarkota sitä, etteivät muut voisi opetella moderneja nykyaikasia systeemejä."

    Tyhmään päähäsi ei tunnu uppoavan millään, että tuollaiset oppimiset on ohjelmakohtaisia ja ohjelmoinnissa tarvitaan ymmärtää asia yleisellä tasolla. Ohjelmointivälineet vaihtuu kokoajan ja sitä ei opi ikinä ohjelmoimaan jos ei opettele perusteita. Toistaiseksi komentorivikäyttöliittymä on ainoa yleispätevä käyttöliittymä joka on yhdenmukainen joka paikassa ja erilaisia graafisia käyttöliittymiä samaan hommaan on tuhat. Opettelemalla homman komentorivillä, voi sitten vaivattomammin siirtyä eri GUI-ohjelmiin. Opettelemalla yhden GUI:n ollaan täysin pihalla seuraavan GUI:n kanssa koska perusteita ei osata.

    Homman näkee harvinaisen hyvin kun jotkut opettelee tietokoneen käyttöä tekemällä graafisella tekstinkäsittelyohjelmalla jotain tekstinpätkiä mutta opettelu menee jokseenkin täysin hukkaan koska eivät löydä tallentamiaan tiedostoja kiintolevyltä, tekstiäkään ei voi järkevästi editoida kun dokumentin rakenne on rikki ja sitten kun ostavat jonkun MS Office 2007:n missä on vähän erilainen käyttöliittymä, eivät osaa käyttää sitä yhtään.

    Ohjelmoinnissa perusteiden ymmärtäminen on vielä kriittisempää.

    ---

    Jos haluaisit opettaa nykyaikaisia tapoja, opettaisit funktionaalisia kieliä. Minkään _työkalun_ neuvominen EI OLE opettamista. Oppiminen tehdään asetetta korkeammalla tasolla.

    Mitä siitä autokoulusta tulisi jos ajamisen opettaminen olisi jonkun tietyn auton käyttöliittymän opettamista eikä liikennesääntöjä tai sitä perusfysiikkaa miten auto voi puskea tieltä pois. Ohjelmoinnissa homma on täysin sama.

    Eli ihan ensitöikseen ÄLÄ NEUVO MITÄÄN TYÖKALUA! Se on mainostamista eikä mitään opettamista. Neuvo sitä kieltä tai ongelmaa. Varoitan viimeisen kerran ja jatkossa ilmoitan kaikki työkalumainostukset ylläpidolle, työkalusta riippumatta. On nimittäin palstan sääntöjä vastaan eikä hyödytä eikä opeta kysyjää millään tavalla.

    Voit sitten ryhtyä narisemaan saman tien ylläpidolle, meinaan millään tommosella uhkailulla on aika turhaa yrittää tappaa keskustelua mun kanssani jos kaveri ite ei viitti edes vastata kysyjälle ja itkee sitten siitä kun joku muu vastaa hänen mielestään väärällä tavalla.

    Autoesimerkkis on ihan kiva muuten, mutta komentorivimallisena se tarkottais sitä, että ajamaan opeteltais 1900-luvun alun masiinoilla ilman mitään nykyherkkuja ihan vaan sen takia kun se on niin "aitoa" ja sillä oppii sen miten auto toimii ja pelittää. Ai ai kun on ikävä jos autossa on apsit ja niitä opetellaan käyttämään. Ois niin paljon parempi kun jokanen opettelis autokoulussa pumppaamaan jarruja. Sitten omalla ajalla vois varmaan ihmetellä sitä kuinka tommonen vanha tekniikka onkin nykyautoissa enempi haitta.

    Samaa meininkiä soveltelet ohjelmointiin aika kivalla mallilla. Jos Visual Studion maininta ja esimerkkien kertominen toisesta ympäristöstä silloin kun muut eivät puhu mitään on sulle liikaa, niin miksi et tekis jotain rakentavaa? Kirjota ite niitä pyyttonijuttujas. Lurittele noille kysyjille ummet ja lammet pyyttonin ihmeistä ja kukaan ei pakota sua kirjottelemaan mistään modernista jos et sitä halua tehä.

    Ihan varmaan museokamoilla voi oppia tekemään jotain syvällisemmin kun koko toteutus näkyy silmien edessä, mutta ei semmosella ole enää oikeasti käyttöä suurimmalle osalle porukkaa. Jos kaveri vielä kertoo opettelevansa pyyttonia ja guita niin tuut tänne uhoamaan kuinka ideistä ei oikeestaan sais puhua. Eihän ne joo olekkaan nykysin tärkeä osa ohjelmistotuotantoa.

    On muuten aika vähissä ne todistukset joissa todistetaan kuinka komentorivikoodaus on ainoa tapa oppia homma oikeen. Mielipiteitä löytyy vaikka kuinka ja joskus jopa vähän perusteltujakin, mutta kunnon todistuksia ei.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Voit sitten ryhtyä narisemaan saman tien ylläpidolle, meinaan millään tommosella uhkailulla on aika turhaa yrittää tappaa keskustelua mun kanssani jos kaveri ite ei viitti edes vastata kysyjälle ja itkee sitten siitä kun joku muu vastaa hänen mielestään väärällä tavalla.

    Autoesimerkkis on ihan kiva muuten, mutta komentorivimallisena se tarkottais sitä, että ajamaan opeteltais 1900-luvun alun masiinoilla ilman mitään nykyherkkuja ihan vaan sen takia kun se on niin "aitoa" ja sillä oppii sen miten auto toimii ja pelittää. Ai ai kun on ikävä jos autossa on apsit ja niitä opetellaan käyttämään. Ois niin paljon parempi kun jokanen opettelis autokoulussa pumppaamaan jarruja. Sitten omalla ajalla vois varmaan ihmetellä sitä kuinka tommonen vanha tekniikka onkin nykyautoissa enempi haitta.

    Samaa meininkiä soveltelet ohjelmointiin aika kivalla mallilla. Jos Visual Studion maininta ja esimerkkien kertominen toisesta ympäristöstä silloin kun muut eivät puhu mitään on sulle liikaa, niin miksi et tekis jotain rakentavaa? Kirjota ite niitä pyyttonijuttujas. Lurittele noille kysyjille ummet ja lammet pyyttonin ihmeistä ja kukaan ei pakota sua kirjottelemaan mistään modernista jos et sitä halua tehä.

    Ihan varmaan museokamoilla voi oppia tekemään jotain syvällisemmin kun koko toteutus näkyy silmien edessä, mutta ei semmosella ole enää oikeasti käyttöä suurimmalle osalle porukkaa. Jos kaveri vielä kertoo opettelevansa pyyttonia ja guita niin tuut tänne uhoamaan kuinka ideistä ei oikeestaan sais puhua. Eihän ne joo olekkaan nykysin tärkeä osa ohjelmistotuotantoa.

    On muuten aika vähissä ne todistukset joissa todistetaan kuinka komentorivikoodaus on ainoa tapa oppia homma oikeen. Mielipiteitä löytyy vaikka kuinka ja joskus jopa vähän perusteltujakin, mutta kunnon todistuksia ei.

    "Autoesimerkkis on ihan kiva muuten, mutta komentorivimallisena se tarkottais sitä, että ajamaan opeteltais 1900-luvun alun masiinoilla ilman mitään nykyherkkuja ihan vaan sen takia kun se on niin "aitoa" ja sillä oppii sen miten auto toimii ja pelittää."

    Jokaisessa nykytietokoneessa on komentorivi ja jokaisessa nykytietokoneessa on hierarkinen tiedostojärjestelmä. Nappien paikat sitten vaihtelee sitten ohjelmissa ja käyttöjärjestelmissä. Ne ei ole perusosaamista vaan muuttuvaa tietoa.

    "Samaa meininkiä soveltelet ohjelmointiin aika kivalla mallilla. Jos Visual Studion maininta ja esimerkkien kertominen toisesta ympäristöstä silloin kun muut eivät puhu mitään on sulle liikaa, niin miksi et tekis jotain rakentavaa?"

    Keskustele itse rakentavasti äläkä mainosta mitään tuotteita. Autokoulussa ei opeteta miten juuri Fordissa käännetään penkki kohdalleen vaan se kerrotaan, että miten se penkki pitää olla käännettynä, että on ergonominen ja kuljettaja tapaa hallintalaitteisiin. Saatetaan sitten ehkä kädestä pitäen neuvoa sen auton kanssa millä just nyt ollaan harjoittelemassa ja se auto saattaa olla mikä tahansa.

    Täällä ei kukaan muu ole mainostamassa jotain VÄLINETTÄ vaan autetaan kysyjää. Kysyjä saa käyttää just sitä kieltä, IDE:ä ja työkalua mitä haluaa. Jos kysyjä kysyy, että mistä napista työkalulla X tehdään jotain niin neuvoo sitten, Muuten voi pitää sen turpansa kiinni jos ei osaa muuta kuin mainostaa. Kysyjä kysyi miksei toimi enkä minä esimerkiksi käynyt sille kertomaan miten Delphillä homma toimii.

    "On muuten aika vähissä ne todistukset joissa todistetaan kuinka komentorivikoodaus on ainoa tapa oppia homma oikeen."

    No pitäisikö sitten opettaa kaikki 1000 erilaista IDE:ä? Yhtä ei voi valita koska ne on erilaisia. Todistusta voisit saada vaikka siitä että kävisit kouluja tai keskustelisit ihmisten kanssa jotka työkseen opettavat ohjelmointia. Ovat muuten kaikki yhtä mieltä, että nykypäivänä Python on paras kieli ohjelmoinnin nykypäivänä opetteluun. Aivan kuten Basic oli ennen muinoin. KUKAAN ei kuitenkaan käy mainostamaan mitä toteutusta siitä Pythonista käyttää. Se on ihan oma asiansa ja saa käyttää vaikka Pythonin .NET toteutusta, referenssitoteutusta tai mitä nyt huvittaa. _Kieli_ on kuitenkin sama vaikka se kirjoitettaisiin eri tavalla ja eri välineillä. Tai vaikka generoitaisiin sitä koodia.

    Äänestä

  • m-kar kirjoitti:

    "Autoesimerkkis on ihan kiva muuten, mutta komentorivimallisena se tarkottais sitä, että ajamaan opeteltais 1900-luvun alun masiinoilla ilman mitään nykyherkkuja ihan vaan sen takia kun se on niin "aitoa" ja sillä oppii sen miten auto toimii ja pelittää."

    Jokaisessa nykytietokoneessa on komentorivi ja jokaisessa nykytietokoneessa on hierarkinen tiedostojärjestelmä. Nappien paikat sitten vaihtelee sitten ohjelmissa ja käyttöjärjestelmissä. Ne ei ole perusosaamista vaan muuttuvaa tietoa.

    "Samaa meininkiä soveltelet ohjelmointiin aika kivalla mallilla. Jos Visual Studion maininta ja esimerkkien kertominen toisesta ympäristöstä silloin kun muut eivät puhu mitään on sulle liikaa, niin miksi et tekis jotain rakentavaa?"

    Keskustele itse rakentavasti äläkä mainosta mitään tuotteita. Autokoulussa ei opeteta miten juuri Fordissa käännetään penkki kohdalleen vaan se kerrotaan, että miten se penkki pitää olla käännettynä, että on ergonominen ja kuljettaja tapaa hallintalaitteisiin. Saatetaan sitten ehkä kädestä pitäen neuvoa sen auton kanssa millä just nyt ollaan harjoittelemassa ja se auto saattaa olla mikä tahansa.

    Täällä ei kukaan muu ole mainostamassa jotain VÄLINETTÄ vaan autetaan kysyjää. Kysyjä saa käyttää just sitä kieltä, IDE:ä ja työkalua mitä haluaa. Jos kysyjä kysyy, että mistä napista työkalulla X tehdään jotain niin neuvoo sitten, Muuten voi pitää sen turpansa kiinni jos ei osaa muuta kuin mainostaa. Kysyjä kysyi miksei toimi enkä minä esimerkiksi käynyt sille kertomaan miten Delphillä homma toimii.

    "On muuten aika vähissä ne todistukset joissa todistetaan kuinka komentorivikoodaus on ainoa tapa oppia homma oikeen."

    No pitäisikö sitten opettaa kaikki 1000 erilaista IDE:ä? Yhtä ei voi valita koska ne on erilaisia. Todistusta voisit saada vaikka siitä että kävisit kouluja tai keskustelisit ihmisten kanssa jotka työkseen opettavat ohjelmointia. Ovat muuten kaikki yhtä mieltä, että nykypäivänä Python on paras kieli ohjelmoinnin nykypäivänä opetteluun. Aivan kuten Basic oli ennen muinoin. KUKAAN ei kuitenkaan käy mainostamaan mitä toteutusta siitä Pythonista käyttää. Se on ihan oma asiansa ja saa käyttää vaikka Pythonin .NET toteutusta, referenssitoteutusta tai mitä nyt huvittaa. _Kieli_ on kuitenkin sama vaikka se kirjoitettaisiin eri tavalla ja eri välineillä. Tai vaikka generoitaisiin sitä koodia.

    Ei se komentorivikään ole ollenkaan samanlainen kaikissa systeemeissä. Muuttuvaa sekin on ihan siinä missä kaikki muukin.

    Jos kerron miten Visual Studiossa, joka on muuten ihan mainio systeemi vaikka ootkin ennakkoluulonen sen suhteen, hommat hoidetaan niin se on vaan hyvästä. Katos kun ei se semmonen estä sua kertomasta pyyttomista vaikka mitä. Jos sua ärsyttää se, että kerron hyvästä välineestäni, niin se on sun ongelmasi. Älä viitti keuhkota siitä tohon sävyyn.

    Tää menee niin, että kysyjä saa käyttää just sitä mitä välinettä haluaa ja niin saa vastaajakin. Kiva se on noiden IDE:jen käyttöä osata. Ikävä jättää opettelematta asioita vain sillä verukkeella, että jotain voi muuttua joskus.

    Aika vitsi toi, että kaikki ois sitä mieltä, että pyyttoni ois paras väline ohjelmoinnin opetteluun. Aika monen mielestä se on siihen surkeakin.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Ei se komentorivikään ole ollenkaan samanlainen kaikissa systeemeissä. Muuttuvaa sekin on ihan siinä missä kaikki muukin.

    Jos kerron miten Visual Studiossa, joka on muuten ihan mainio systeemi vaikka ootkin ennakkoluulonen sen suhteen, hommat hoidetaan niin se on vaan hyvästä. Katos kun ei se semmonen estä sua kertomasta pyyttomista vaikka mitä. Jos sua ärsyttää se, että kerron hyvästä välineestäni, niin se on sun ongelmasi. Älä viitti keuhkota siitä tohon sävyyn.

    Tää menee niin, että kysyjä saa käyttää just sitä mitä välinettä haluaa ja niin saa vastaajakin. Kiva se on noiden IDE:jen käyttöä osata. Ikävä jättää opettelematta asioita vain sillä verukkeella, että jotain voi muuttua joskus.

    Aika vitsi toi, että kaikki ois sitä mieltä, että pyyttoni ois paras väline ohjelmoinnin opetteluun. Aika monen mielestä se on siihen surkeakin.

    "Ei se komentorivikään ole ollenkaan samanlainen kaikissa systeemeissä."

    Melkein kaikkien käyttöjärjestelmien komentorivi on standardi sh -yhteensopiva. Ainoa poikkeus on Windowsit mutta näidenkin uusi Powershell muuttaa niitä Unixin kaltaiseksi. Jokainen komentoriviohjelma toimii samalla mekanismilla.

    "Muuttuvaa sekin on ihan siinä missä kaikki muukin."

    Ei ole muuttunut varmaan 35 -vuoteen.

    "Jos kerron miten Visual Studiossa, joka on muuten ihan mainio systeemi vaikka ootkin ennakkoluulonen sen suhteen, hommat hoidetaan niin se on vaan hyvästä."

    Kyllä minä Visual Studion tiedän muttan kun se mainostus ei edelleenkään kuulu tänne palstalle tajua jo! Jos kysytään miksi Pythonohjelma ei toimi niin minkä vitun takia pitää käydä selittää miten se toimii jollain Visual Studiolla?!

    *** MAINOSTAMINEN ON KIELLETTY! ***

    Jos et ymmärrä kun sitä ratakiskosta taivutetaan niin mikset sitten vaan painu muualle täältä palstalta mainostamaan? Täällä osaa kaikki muut keskustella ohjelmoinnista ilman mitään mainostusta. Jos joku kysyy vaikka Javaan apua niin ei sillekään tarvitse mitään Netbeansia käydä mainostamaan tai vaikka IBM:n Javatoteutusta, Visual Studiota vielä vähemmän. Jokainen tekee just sillä millä haluaa.

    "Tää menee niin, että kysyjä saa käyttää just sitä mitä välinettä haluaa ja niin saa vastaajakin."

    Niin saa käyttää. Älä sitten mainosta sanallakaan välineistäisi vaan auta sitä kysyjää. Kieli on Python, väline saa olla just se mikä kysyjää tai sinua kiinnostaa, ei tarvi mainostaa.

    "Kiva se on noiden IDE:jen käyttöä osata."

    Niin on. Jokainen saa opetella just sitä mitä haluaa, joten lopeta se saatanan mainostamaminen.

    "Aika vitsi toi, että kaikki ois sitä mieltä, että pyyttoni ois paras väline ohjelmoinnin opetteluun."

    Välinehän on yks hailee. Pythonista on lukuisia toteutuksia mutta kieli on hyvä koska se on selkeä ja tulkattava, ja sitä käytetään niin paljon ja on laaja standardikirjastokin.

    Sitten kun on Hello Worldit, ehdot ja silmukat hanskassa niin sitten voi siirtyä eteenpäin. Tulkattava kieli on eduksi opettelussa niin ei tarvitse lisätä oppimiskäyrää millään kääntäjillä. Sama kuin Qbasicilla oli aikoinaan, helvetin hyvä ohjelmoinnin opetteluun. Tosin kuin Qbasic, Python sopii myös myöhemmin muuhunkin kevyeen skriptailuun eikä tämä opettelu mene hukkaan.

    Äänestä

  • m-kar kirjoitti:

    "Ei se komentorivikään ole ollenkaan samanlainen kaikissa systeemeissä."

    Melkein kaikkien käyttöjärjestelmien komentorivi on standardi sh -yhteensopiva. Ainoa poikkeus on Windowsit mutta näidenkin uusi Powershell muuttaa niitä Unixin kaltaiseksi. Jokainen komentoriviohjelma toimii samalla mekanismilla.

    "Muuttuvaa sekin on ihan siinä missä kaikki muukin."

    Ei ole muuttunut varmaan 35 -vuoteen.

    "Jos kerron miten Visual Studiossa, joka on muuten ihan mainio systeemi vaikka ootkin ennakkoluulonen sen suhteen, hommat hoidetaan niin se on vaan hyvästä."

    Kyllä minä Visual Studion tiedän muttan kun se mainostus ei edelleenkään kuulu tänne palstalle tajua jo! Jos kysytään miksi Pythonohjelma ei toimi niin minkä vitun takia pitää käydä selittää miten se toimii jollain Visual Studiolla?!

    *** MAINOSTAMINEN ON KIELLETTY! ***

    Jos et ymmärrä kun sitä ratakiskosta taivutetaan niin mikset sitten vaan painu muualle täältä palstalta mainostamaan? Täällä osaa kaikki muut keskustella ohjelmoinnista ilman mitään mainostusta. Jos joku kysyy vaikka Javaan apua niin ei sillekään tarvitse mitään Netbeansia käydä mainostamaan tai vaikka IBM:n Javatoteutusta, Visual Studiota vielä vähemmän. Jokainen tekee just sillä millä haluaa.

    "Tää menee niin, että kysyjä saa käyttää just sitä mitä välinettä haluaa ja niin saa vastaajakin."

    Niin saa käyttää. Älä sitten mainosta sanallakaan välineistäisi vaan auta sitä kysyjää. Kieli on Python, väline saa olla just se mikä kysyjää tai sinua kiinnostaa, ei tarvi mainostaa.

    "Kiva se on noiden IDE:jen käyttöä osata."

    Niin on. Jokainen saa opetella just sitä mitä haluaa, joten lopeta se saatanan mainostamaminen.

    "Aika vitsi toi, että kaikki ois sitä mieltä, että pyyttoni ois paras väline ohjelmoinnin opetteluun."

    Välinehän on yks hailee. Pythonista on lukuisia toteutuksia mutta kieli on hyvä koska se on selkeä ja tulkattava, ja sitä käytetään niin paljon ja on laaja standardikirjastokin.

    Sitten kun on Hello Worldit, ehdot ja silmukat hanskassa niin sitten voi siirtyä eteenpäin. Tulkattava kieli on eduksi opettelussa niin ei tarvitse lisätä oppimiskäyrää millään kääntäjillä. Sama kuin Qbasicilla oli aikoinaan, helvetin hyvä ohjelmoinnin opetteluun. Tosin kuin Qbasic, Python sopii myös myöhemmin muuhunkin kevyeen skriptailuun eikä tämä opettelu mene hukkaan.

    Melkein standardi komentorivi se shyhteensopiva. Mitä nyt noin 80% kotikoneista ei sitä nykysin tue, mutta sitähän sä et halua muistaa kun et tykkää siitä, että ihmisillä on Windowseja.

    Ton kun muistaa niin se muuttumattomuus ei merkkaa mitään kun vakiota komentoriviä ei kuitenkaan oo olemassa. Kotikoneita muuten oli olemassa jo jotain 30 vuotta sitten jollain tasolla ainakin ja aika hissua oli vielä jopa 15 vuottakin sitten ton komentorivin kanssa jos vähänkin halus sitä kotona tai edes töissä käyttää. PC-aika oli kova juttu joskus 1994 ja Linukkakin silloin aika kuraa vähänkin normaalille kaverille. Että se siitä komentotulkin muuttumattomuudesta normaalikäytössä.

    Jos sun mielestä ei saa puhua Visual Studiosta rinnakkaisesimerkkien muodossa niin sanos, että kun mä en mainosta niin onkos toi Microsoftin systeemeistä puhuminen kielletty missäkin säännössä erikseen? Eikös tää oo semmonen alue jossa voi puhua mistä huvittaa kuhan ei häiriköi? Ja asiallisesti oon rupatellut.

    Katos kun et oo pahemmin perustellut sitäkään, miksi opettelu pitäs tehä jollain systeemillä jota ei sitten käytetä oikeesti.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Melkein standardi komentorivi se shyhteensopiva. Mitä nyt noin 80% kotikoneista ei sitä nykysin tue, mutta sitähän sä et halua muistaa kun et tykkää siitä, että ihmisillä on Windowseja.

    Ton kun muistaa niin se muuttumattomuus ei merkkaa mitään kun vakiota komentoriviä ei kuitenkaan oo olemassa. Kotikoneita muuten oli olemassa jo jotain 30 vuotta sitten jollain tasolla ainakin ja aika hissua oli vielä jopa 15 vuottakin sitten ton komentorivin kanssa jos vähänkin halus sitä kotona tai edes töissä käyttää. PC-aika oli kova juttu joskus 1994 ja Linukkakin silloin aika kuraa vähänkin normaalille kaverille. Että se siitä komentotulkin muuttumattomuudesta normaalikäytössä.

    Jos sun mielestä ei saa puhua Visual Studiosta rinnakkaisesimerkkien muodossa niin sanos, että kun mä en mainosta niin onkos toi Microsoftin systeemeistä puhuminen kielletty missäkin säännössä erikseen? Eikös tää oo semmonen alue jossa voi puhua mistä huvittaa kuhan ei häiriköi? Ja asiallisesti oon rupatellut.

    Katos kun et oo pahemmin perustellut sitäkään, miksi opettelu pitäs tehä jollain systeemillä jota ei sitten käytetä oikeesti.

    "Melkein standardi komentorivi se shyhteensopiva. Mitä nyt noin 80% kotikoneista ei sitä nykysin tue, mutta sitähän sä et halua muistaa kun et tykkää siitä, että ihmisillä on Windowseja."

    Windowseissa on Powershell ja sen lisäksi Windowsit TUKEE sh -yhteensopivaa standardikomentoriviä:

    http://en.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX

    "Ton kun muistaa niin se muuttumattomuus ei merkkaa mitään kun vakiota komentoriviä ei kuitenkaan oo olemassa."

    Kyllä on.

    "Kotikoneita muuten oli olemassa jo jotain 30 vuotta sitten jollain tasolla ainakin ja aika hissua oli vielä jopa 15 vuottakin sitten ton komentorivin kanssa jos vähänkin halus sitä kotona tai edes töissä käyttää."

    Kotikoneissa on ollut 16-bittisistä ajoista lähtien komentorivi. 80-luvulla unixit ei olleet kotikäyttäjien vehkeitä vaikka ohjelmoijille kyllä tuttuja. Toimintamekanismiltaan jollain Dossin ja Unixin komentorivillä ei ollut niin järisyttäviä eroja etteikö toista osaisi käyttää.

    Ja komentoriviä sitten on käytetty kotikäytössä jostain 80-luvun alusta nykypäivään saakka. Vai luuletkos että se komentorivin käyttö olisi jossain välissä kummallisesti kadonnut?

    "Jos sun mielestä ei saa puhua Visual Studiosta rinnakkaisesimerkkien muodossa niin sanos, että kun mä en mainosta niin onkos toi Microsoftin systeemeistä puhuminen kielletty missäkin säännössä erikseen?"

    Kyllä se mainostaminen koskee ihan kaikkia tuotteita. Joten puhu vaan kielistä ja ohjelmoinnista. Olet joka tilanteessa tekemässä jotain hemmetin rinnakkaisesimerkkiä johonkin Visual Studioon. Kukaan muu ei tällä tavalla mainosta täällä mitään tuotetta, ei kukaan.

    "Katos kun et oo pahemmin perustellut sitäkään, miksi opettelu pitäs tehä jollain systeemillä jota ei sitten käytetä oikeesti."

    Siksi minä sitä Pythonia suosin kun sitä käytetään oikeasti. Sillä nimittäin skriptataan lukuisia perussovelluksia (IRC-asiakasohjelmat, Blender, GIMP jne.), sen ympärille on rakennettu kääntöympäristöjä (esim. SCons) ja on erittäin suosittu "liimakieli" ja standardikirjasto kun on laaja sillä protoillaan paljon. Sillä on hyvä opetella ja sen jälkeen sitä voi käyttää jos jotain tarvitsee jotain pientä koodin pätkää pieraita nopeasti sen pääsovelluksen kaveriksi. Jos vaikka tekisi peliä niin voisi sillä Pythonilla tehdä pienen kikkareen millä lukee 3D-mallit mukavempaan muotoon tai muuta vastaavaa vaikka tekisi sen pelin C#:lla, C++:lla, Javalla tai millä haluaa.

    Tosin kuin jotain Qbasicia joka on historiaa ja jota ei aikoinaankaan käytetty muualla kuin jossain protoilussa ja opettelussa. Sehän olisi hyvä ohjelmoinnin opetteluun mutta kun se on 80-luvulta eikä sitä käytetä missään oikeasti.

    Niin ja tiedoksi vaan, Python muuten valittiin siihen OLPC projektiin opetuskieleksi kehitysmaiden lapsille. Eli todellakin hyvin perusteiden opetteluun sopiva kieli. Mikä olisi sopivampi kieli opetteluun kuin se jota käytetään oikeasti ohjelmoinnin opettamiseen?

    Äänestä

  • m-kar kirjoitti:

    "Melkein standardi komentorivi se shyhteensopiva. Mitä nyt noin 80% kotikoneista ei sitä nykysin tue, mutta sitähän sä et halua muistaa kun et tykkää siitä, että ihmisillä on Windowseja."

    Windowseissa on Powershell ja sen lisäksi Windowsit TUKEE sh -yhteensopivaa standardikomentoriviä:

    http://en.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX

    "Ton kun muistaa niin se muuttumattomuus ei merkkaa mitään kun vakiota komentoriviä ei kuitenkaan oo olemassa."

    Kyllä on.

    "Kotikoneita muuten oli olemassa jo jotain 30 vuotta sitten jollain tasolla ainakin ja aika hissua oli vielä jopa 15 vuottakin sitten ton komentorivin kanssa jos vähänkin halus sitä kotona tai edes töissä käyttää."

    Kotikoneissa on ollut 16-bittisistä ajoista lähtien komentorivi. 80-luvulla unixit ei olleet kotikäyttäjien vehkeitä vaikka ohjelmoijille kyllä tuttuja. Toimintamekanismiltaan jollain Dossin ja Unixin komentorivillä ei ollut niin järisyttäviä eroja etteikö toista osaisi käyttää.

    Ja komentoriviä sitten on käytetty kotikäytössä jostain 80-luvun alusta nykypäivään saakka. Vai luuletkos että se komentorivin käyttö olisi jossain välissä kummallisesti kadonnut?

    "Jos sun mielestä ei saa puhua Visual Studiosta rinnakkaisesimerkkien muodossa niin sanos, että kun mä en mainosta niin onkos toi Microsoftin systeemeistä puhuminen kielletty missäkin säännössä erikseen?"

    Kyllä se mainostaminen koskee ihan kaikkia tuotteita. Joten puhu vaan kielistä ja ohjelmoinnista. Olet joka tilanteessa tekemässä jotain hemmetin rinnakkaisesimerkkiä johonkin Visual Studioon. Kukaan muu ei tällä tavalla mainosta täällä mitään tuotetta, ei kukaan.

    "Katos kun et oo pahemmin perustellut sitäkään, miksi opettelu pitäs tehä jollain systeemillä jota ei sitten käytetä oikeesti."

    Siksi minä sitä Pythonia suosin kun sitä käytetään oikeasti. Sillä nimittäin skriptataan lukuisia perussovelluksia (IRC-asiakasohjelmat, Blender, GIMP jne.), sen ympärille on rakennettu kääntöympäristöjä (esim. SCons) ja on erittäin suosittu "liimakieli" ja standardikirjasto kun on laaja sillä protoillaan paljon. Sillä on hyvä opetella ja sen jälkeen sitä voi käyttää jos jotain tarvitsee jotain pientä koodin pätkää pieraita nopeasti sen pääsovelluksen kaveriksi. Jos vaikka tekisi peliä niin voisi sillä Pythonilla tehdä pienen kikkareen millä lukee 3D-mallit mukavempaan muotoon tai muuta vastaavaa vaikka tekisi sen pelin C#:lla, C++:lla, Javalla tai millä haluaa.

    Tosin kuin jotain Qbasicia joka on historiaa ja jota ei aikoinaankaan käytetty muualla kuin jossain protoilussa ja opettelussa. Sehän olisi hyvä ohjelmoinnin opetteluun mutta kun se on 80-luvulta eikä sitä käytetä missään oikeasti.

    Niin ja tiedoksi vaan, Python muuten valittiin siihen OLPC projektiin opetuskieleksi kehitysmaiden lapsille. Eli todellakin hyvin perusteiden opetteluun sopiva kieli. Mikä olisi sopivampi kieli opetteluun kuin se jota käytetään oikeasti ohjelmoinnin opettamiseen?

    Varmaan Winukkakin tukee vaikka mitä, mutta ei oo toi winukan normaali komentokehote mikään sh-mallinen. Käytännössä siis 80% kotikoneista on semmottia joissa ei oo juuri tänään tota sh-yhteensopivaa komentokehotetta joten ihan turhaa väittää tommosta vähemmistöjuttua standardiksi.

    Nää 16-bittisistä ajoista olleet komentorivit ovat kuule ihan erilaisia kuin nykyset. Jossain Amikassakin oli komentorivi ja tuskin väität cli:tä ton kanssa samaks tai edes jotenkin samalla tavalla toimivaks.

    Joo, samalla periaatteella ne kaikki toimivat sikäli, että siinä on tekstiä ja mahdollisuus käskee konetta kirjottamalla tekstiä mutta siihen se loppuukin. Mäkissä muuten aika harva normaali käyttäjä on koskaan komentoriviä nähnykkään ja se on se oikee suuntaus missä tavallisten käyttäjien pitäis päästä liikkumaan muutenkin.

    Että ihan samalla tavalla komentorivit ovat erilaisia kuin nää idet jos mietit asiaa mitenkään. Ei oo enää noissa Startup-Sequencea kuten oli jossain ennen.

    Joo katos jos susta noi mun maininnat Visual Studiosta kuulostavat niin hyviltä ja houkuttelevilta, että ne tuntuvat mainonnalta, niin sille on paha voida mitään. Hyvä tuote kun on hyvä tuote vaikka sitä joku haukkuskin. Mää en meinaan mainosta.

    Vähän kuvaavaa kielen käyttökohteista jos sillä tehään lähinnä "kikkareita" jotain muuta varten. VB.NET ja Pyyttonin koodit tossa lottojutussakin olivat muuten aika yks yhteen. Missäs se pyyttonin kovat edut vähäsempänä koodimääränä olikaan?

    OLPC on ihan kiva juttu, mutta katotaan miten se menestyy jatkossa. Ohan noihin oltu laittamassa kaikkea jännää muutenkin. Ite tykkään VS + C#:sta tai VS+VB.NET:stä kun ovat molemmat hyviä paketteja moneen hommaan ja ovat noi asiakkaatkin kiittäneet niillä tehdyistäs ysteemeistä ihan kädestä pitäen kun tulee niin pro näköstä, ettei noilla linukoilla olisi kuulemma niin hienoo odottanutkaan kun nyt saavat.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Varmaan Winukkakin tukee vaikka mitä, mutta ei oo toi winukan normaali komentokehote mikään sh-mallinen. Käytännössä siis 80% kotikoneista on semmottia joissa ei oo juuri tänään tota sh-yhteensopivaa komentokehotetta joten ihan turhaa väittää tommosta vähemmistöjuttua standardiksi.

    Nää 16-bittisistä ajoista olleet komentorivit ovat kuule ihan erilaisia kuin nykyset. Jossain Amikassakin oli komentorivi ja tuskin väität cli:tä ton kanssa samaks tai edes jotenkin samalla tavalla toimivaks.

    Joo, samalla periaatteella ne kaikki toimivat sikäli, että siinä on tekstiä ja mahdollisuus käskee konetta kirjottamalla tekstiä mutta siihen se loppuukin. Mäkissä muuten aika harva normaali käyttäjä on koskaan komentoriviä nähnykkään ja se on se oikee suuntaus missä tavallisten käyttäjien pitäis päästä liikkumaan muutenkin.

    Että ihan samalla tavalla komentorivit ovat erilaisia kuin nää idet jos mietit asiaa mitenkään. Ei oo enää noissa Startup-Sequencea kuten oli jossain ennen.

    Joo katos jos susta noi mun maininnat Visual Studiosta kuulostavat niin hyviltä ja houkuttelevilta, että ne tuntuvat mainonnalta, niin sille on paha voida mitään. Hyvä tuote kun on hyvä tuote vaikka sitä joku haukkuskin. Mää en meinaan mainosta.

    Vähän kuvaavaa kielen käyttökohteista jos sillä tehään lähinnä "kikkareita" jotain muuta varten. VB.NET ja Pyyttonin koodit tossa lottojutussakin olivat muuten aika yks yhteen. Missäs se pyyttonin kovat edut vähäsempänä koodimääränä olikaan?

    OLPC on ihan kiva juttu, mutta katotaan miten se menestyy jatkossa. Ohan noihin oltu laittamassa kaikkea jännää muutenkin. Ite tykkään VS + C#:sta tai VS+VB.NET:stä kun ovat molemmat hyviä paketteja moneen hommaan ja ovat noi asiakkaatkin kiittäneet niillä tehdyistäs ysteemeistä ihan kädestä pitäen kun tulee niin pro näköstä, ettei noilla linukoilla olisi kuulemma niin hienoo odottanutkaan kun nyt saavat.

    "Varmaan Winukkakin tukee vaikka mitä, mutta ei oo toi winukan normaali komentokehote mikään sh-mallinen."

    Normaali komentokehote on nykyisin Powershell Windowseissa ja sillä on hyvin vähän eroa sh yhteensopivaan kehotteeseen ja standardikehote tuetaan myös. Windowsien legacy komentorivi toimii myös pääpiirteissään samalla tavalla, hakemistot nyt erotetellaan eri merkillä ja vastaavia eroja. Joku wget ja muut perussovellukset toimii silti samalla tavalla komentorivistä riippumatta.

    "Käytännössä siis 80% kotikoneista on semmottia joissa ei oo juuri tänään tota sh-yhteensopivaa komentokehotetta joten ihan turhaa väittää tommosta vähemmistöjuttua standardiksi."

    Sh -yhteensopiva on standardi, se on standardoitu ISO:ssa, maailman käyttöjärjestelmistä 99% käyttää sitä ja millään kotikoneilla taas ei ole MITÄÄN merkitystä kun devvaaja voi käyttää mitä huvittaa. Samanlaista inttämistä kuin kuljetusalan ihminen ei voisi kuljettaa tukkeja autolla vaikka ne tämän rekkaan sopiikin kun jollain kauppakassilla ei onnistu. Järki hoi!

    "Mäkissä muuten aika harva normaali käyttäjä on koskaan komentoriviä nähnykkään ja se on se oikee suuntaus missä tavallisten käyttäjien pitäis päästä liikkumaan muutenkin."

    Mac OS X:ssä on sh -yhteensopiva komentorivi ja sillä on ollut Mac OS X:ssä enemmän merkitystä kuin aikaisemmissa Applen käyttöjärjestelmissä. Itseasiassa Mac OS X:n tekeminen Unix yhteensopivaksi pelasti Applen koska sillä tavalla saatiin Applen koneisiin reippaasti laajempi sovellustarjonta ja Applen koneet saatiin sopimaan myös tietotyöhön.

    Oikea suuntaus on se, että tietokonetta voi käskyttää eri tavoilla. Komentorivi, GUI, kosketusnäyttö, puheohjaus ja jne. Kaikilla on omat vahvuutensa. Esimerkiksi jos haluaa etelänmatkalla jollain mobiilivehkeellä käskyttää kotikonetta niin mikä tähän olisi parempi käyttöliittymä kuin komentorivi? En ymmärrä ihmisiä jotka on joka asiassa käytettävyyttä vastaan.

    "Joo katos jos susta noi mun maininnat Visual Studiosta kuulostavat niin hyviltä ja houkuttelevilta, että ne tuntuvat mainonnalta, niin sille on paha voida mitään."

    Houkuttelee vaan vähemmän jos se tekee käyttäjistään idiootteja. Täällä puhutaan ohjelmoinnista, ei mainosteta tuotteita tai palveluita. Muut keskustelee asiallisesti kielistä ja ratkaisuista mutta sinä selität kokoajan jostain työkaluista kuinka jollain Visual Studiolla tekee saman asian. Eli mainostusta, eikä se auta kysyjiä millään tavalla.

    "Missäs se pyyttonin kovat edut vähäsempänä koodimääränä olikaan?"

    Yksinkertaisissa ohjelmissa millä tahansa kielellä tulee vähän rivejä.

    Äänestä

  • m-kar kirjoitti:

    "Varmaan Winukkakin tukee vaikka mitä, mutta ei oo toi winukan normaali komentokehote mikään sh-mallinen."

    Normaali komentokehote on nykyisin Powershell Windowseissa ja sillä on hyvin vähän eroa sh yhteensopivaan kehotteeseen ja standardikehote tuetaan myös. Windowsien legacy komentorivi toimii myös pääpiirteissään samalla tavalla, hakemistot nyt erotetellaan eri merkillä ja vastaavia eroja. Joku wget ja muut perussovellukset toimii silti samalla tavalla komentorivistä riippumatta.

    "Käytännössä siis 80% kotikoneista on semmottia joissa ei oo juuri tänään tota sh-yhteensopivaa komentokehotetta joten ihan turhaa väittää tommosta vähemmistöjuttua standardiksi."

    Sh -yhteensopiva on standardi, se on standardoitu ISO:ssa, maailman käyttöjärjestelmistä 99% käyttää sitä ja millään kotikoneilla taas ei ole MITÄÄN merkitystä kun devvaaja voi käyttää mitä huvittaa. Samanlaista inttämistä kuin kuljetusalan ihminen ei voisi kuljettaa tukkeja autolla vaikka ne tämän rekkaan sopiikin kun jollain kauppakassilla ei onnistu. Järki hoi!

    "Mäkissä muuten aika harva normaali käyttäjä on koskaan komentoriviä nähnykkään ja se on se oikee suuntaus missä tavallisten käyttäjien pitäis päästä liikkumaan muutenkin."

    Mac OS X:ssä on sh -yhteensopiva komentorivi ja sillä on ollut Mac OS X:ssä enemmän merkitystä kuin aikaisemmissa Applen käyttöjärjestelmissä. Itseasiassa Mac OS X:n tekeminen Unix yhteensopivaksi pelasti Applen koska sillä tavalla saatiin Applen koneisiin reippaasti laajempi sovellustarjonta ja Applen koneet saatiin sopimaan myös tietotyöhön.

    Oikea suuntaus on se, että tietokonetta voi käskyttää eri tavoilla. Komentorivi, GUI, kosketusnäyttö, puheohjaus ja jne. Kaikilla on omat vahvuutensa. Esimerkiksi jos haluaa etelänmatkalla jollain mobiilivehkeellä käskyttää kotikonetta niin mikä tähän olisi parempi käyttöliittymä kuin komentorivi? En ymmärrä ihmisiä jotka on joka asiassa käytettävyyttä vastaan.

    "Joo katos jos susta noi mun maininnat Visual Studiosta kuulostavat niin hyviltä ja houkuttelevilta, että ne tuntuvat mainonnalta, niin sille on paha voida mitään."

    Houkuttelee vaan vähemmän jos se tekee käyttäjistään idiootteja. Täällä puhutaan ohjelmoinnista, ei mainosteta tuotteita tai palveluita. Muut keskustelee asiallisesti kielistä ja ratkaisuista mutta sinä selität kokoajan jostain työkaluista kuinka jollain Visual Studiolla tekee saman asian. Eli mainostusta, eikä se auta kysyjiä millään tavalla.

    "Missäs se pyyttonin kovat edut vähäsempänä koodimääränä olikaan?"

    Yksinkertaisissa ohjelmissa millä tahansa kielellä tulee vähän rivejä.

    Eli kuten sanottu, alle 80% Winukoista sisältää nyt tänään tommosen powershellin. Ei oo siis oikeen yleinen nykymaailmassa.

    Saahan sen siihen, mutta sitä ei oo nykyään näissä kovinkaan monessa niin ei sitä voi sanoa käyttäjille tutukskaan kun niiden koneissa ei sitä oo. Tästähän tässä oli kyse, eli siitä onko se komentorivi kaikille tuttu. Ei oo ainakaan tommonen kun sitä ei näissä nykysissä Winukoissa ole asennettuna kuin pienessä vähemmistössä. En tiijä kuinka paljon tarkemmin tää pitäs sulle selittää.

    Standardi on varmaan joo kova juttu, mut katos kun sitä standardia tai sen mukasta ratkasua ei kotityöasemien enemmistössä ole asennettuna niin heikun keikun. Ei se oo tuttu.

    Mac OS X:ssä on joo semmonen, mutta melkosen suuren enemmistön ei oo koskaan tarvinnut komentokehotettaan käyttää omasta koneestaan. Se kun on tehty semmoseks masiinaks, että sitä ei tarvii käyttää tommosilla. Aika hienoo disainii normaalille porukalle.

    Aika utopiaa, tänään, ihan tavalliselle ihmiselle kotikoneen käyttely etelänmatkalta. Ite sen osaan tehä ja hoidella, mutta oonkin softa-alan ammattilainen. Ei tavallisilla ihmisillä oo tommoseen yleensä mitään tarvetta.

    Jaa että vähän rivejä? Miksikäs tossa jutussa ei päästy pyyttonilla ollenkaan vielä vähäsempään rivimäärään?

    Äänestä

  • Jepulis Jeep kirjoitti:

    Eli kuten sanottu, alle 80% Winukoista sisältää nyt tänään tommosen powershellin. Ei oo siis oikeen yleinen nykymaailmassa.

    Saahan sen siihen, mutta sitä ei oo nykyään näissä kovinkaan monessa niin ei sitä voi sanoa käyttäjille tutukskaan kun niiden koneissa ei sitä oo. Tästähän tässä oli kyse, eli siitä onko se komentorivi kaikille tuttu. Ei oo ainakaan tommonen kun sitä ei näissä nykysissä Winukoissa ole asennettuna kuin pienessä vähemmistössä. En tiijä kuinka paljon tarkemmin tää pitäs sulle selittää.

    Standardi on varmaan joo kova juttu, mut katos kun sitä standardia tai sen mukasta ratkasua ei kotityöasemien enemmistössä ole asennettuna niin heikun keikun. Ei se oo tuttu.

    Mac OS X:ssä on joo semmonen, mutta melkosen suuren enemmistön ei oo koskaan tarvinnut komentokehotettaan käyttää omasta koneestaan. Se kun on tehty semmoseks masiinaks, että sitä ei tarvii käyttää tommosilla. Aika hienoo disainii normaalille porukalle.

    Aika utopiaa, tänään, ihan tavalliselle ihmiselle kotikoneen käyttely etelänmatkalta. Ite sen osaan tehä ja hoidella, mutta oonkin softa-alan ammattilainen. Ei tavallisilla ihmisillä oo tommoseen yleensä mitään tarvetta.

    Jaa että vähän rivejä? Miksikäs tossa jutussa ei päästy pyyttonilla ollenkaan vielä vähäsempään rivimäärään?

    "Standardi on varmaan joo kova juttu, mut katos kun sitä standardia tai sen mukasta ratkasua ei kotityöasemien enemmistössä ole asennettuna niin heikun keikun. Ei se oo tuttu."

    Entä mitä merkitystä sillä on? Ohjelmoijista varmaan puolet devvaa unixeilla ja toinenkin puoli osaa homman. Komentorivin käyttö nyt kuuluu kuitenkin tietotekniikan perusteisiin ja sehän opetettiin jo peruskoulussa ja vaikka olisikin käyttänyt aikaisemmin erilaista komentoriviä niin siirtyminen standardimalliseen komentoriviin ei ole iso muutos.

    "Se kun on tehty semmoseks masiinaks, että sitä ei tarvii käyttää tommosilla. Aika hienoo disainii normaalille porukalle."

    Ei missään käyttöjärjestelmässä tarvitse käyttää. Kyse onkin siitä kun halutaan käyttää koska tietotyössä sillä tekee asioita näppärästi.

    "Aika utopiaa, tänään, ihan tavalliselle ihmiselle kotikoneen käyttely etelänmatkalta."

    Riippuu vähän onko tavallisella ihmisellä kuinka helppokäyttöiset ohjelmistot koneessa. Saatat varmaan sanoa, että tavalliselle ihmisille on tiedostojen jakaminen HTTP:llä vaikeaa ja sitähän se onkin jos käyttää jotain Windowsia. Helppokäyttöisemmissä käyttöjärjestelmissä ei ole.

    "Ei tavallisilla ihmisillä oo tommoseen yleensä mitään tarvetta."

    Kyllä on. Johan noita älykoteja löytyy ja voi kännykällä etähallita omaa kämppää. Tarvetta on ja siksi sellaisia on kehitelty.

    "Jaa että vähän rivejä? Miksikäs tossa jutussa ei päästy pyyttonilla ollenkaan vielä vähäsempään rivimäärään?"

    Olihan siinä yksi rivi vähemmän tms. Yksinkertaisissa jutuissa rivimäärällä ei ole oleellista eroa.

    Äänestä

  • m-kar kirjoitti:

    "Standardi on varmaan joo kova juttu, mut katos kun sitä standardia tai sen mukasta ratkasua ei kotityöasemien enemmistössä ole asennettuna niin heikun keikun. Ei se oo tuttu."

    Entä mitä merkitystä sillä on? Ohjelmoijista varmaan puolet devvaa unixeilla ja toinenkin puoli osaa homman. Komentorivin käyttö nyt kuuluu kuitenkin tietotekniikan perusteisiin ja sehän opetettiin jo peruskoulussa ja vaikka olisikin käyttänyt aikaisemmin erilaista komentoriviä niin siirtyminen standardimalliseen komentoriviin ei ole iso muutos.

    "Se kun on tehty semmoseks masiinaks, että sitä ei tarvii käyttää tommosilla. Aika hienoo disainii normaalille porukalle."

    Ei missään käyttöjärjestelmässä tarvitse käyttää. Kyse onkin siitä kun halutaan käyttää koska tietotyössä sillä tekee asioita näppärästi.

    "Aika utopiaa, tänään, ihan tavalliselle ihmiselle kotikoneen käyttely etelänmatkalta."

    Riippuu vähän onko tavallisella ihmisellä kuinka helppokäyttöiset ohjelmistot koneessa. Saatat varmaan sanoa, että tavalliselle ihmisille on tiedostojen jakaminen HTTP:llä vaikeaa ja sitähän se onkin jos käyttää jotain Windowsia. Helppokäyttöisemmissä käyttöjärjestelmissä ei ole.

    "Ei tavallisilla ihmisillä oo tommoseen yleensä mitään tarvetta."

    Kyllä on. Johan noita älykoteja löytyy ja voi kännykällä etähallita omaa kämppää. Tarvetta on ja siksi sellaisia on kehitelty.

    "Jaa että vähän rivejä? Miksikäs tossa jutussa ei päästy pyyttonilla ollenkaan vielä vähäsempään rivimäärään?"

    Olihan siinä yksi rivi vähemmän tms. Yksinkertaisissa jutuissa rivimäärällä ei ole oleellista eroa.

    Varmaan puolet devaa linukalla jos kaikki linukkakäyttäjät lasketaan koodaajiksi. Mullakin on opetettu komentoriviä peruskoulussa. Tosin ympäristö tais olla CP/M enkä menis ikinä väittämään, että komentorivit ovat pysyneet samoina. Jos tosissas oot, että CP/M:n komentorivillä ja linukan vastaavalla on jotain tekemistä keskenään, niin oot kyllä aika pahasti erehtynyt.

    Ootkos siis tosissas, että tavalliset ihmiset oisivat jotenkin jakamassa koneitaan netin läpi itelleen? Ei ei kuule, ei se noin mee. Oot elänyt liikaa nörttipiireissä jos luulet tommosia tavallisten ihmisten jutuiks tai ees kaukasiks tarpeiks.

    Älykoteja ja kännykän etähallintaa? Ihan skifiä kuule nyt tavalliselle porukalle. Ja luulet vielä, ettei ois.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Varmaan puolet devaa linukalla jos kaikki linukkakäyttäjät lasketaan koodaajiksi. Mullakin on opetettu komentoriviä peruskoulussa. Tosin ympäristö tais olla CP/M enkä menis ikinä väittämään, että komentorivit ovat pysyneet samoina. Jos tosissas oot, että CP/M:n komentorivillä ja linukan vastaavalla on jotain tekemistä keskenään, niin oot kyllä aika pahasti erehtynyt.

    Ootkos siis tosissas, että tavalliset ihmiset oisivat jotenkin jakamassa koneitaan netin läpi itelleen? Ei ei kuule, ei se noin mee. Oot elänyt liikaa nörttipiireissä jos luulet tommosia tavallisten ihmisten jutuiks tai ees kaukasiks tarpeiks.

    Älykoteja ja kännykän etähallintaa? Ihan skifiä kuule nyt tavalliselle porukalle. Ja luulet vielä, ettei ois.

    "Varmaan puolet devaa linukalla jos kaikki linukkakäyttäjät lasketaan koodaajiksi."

    Linux-pohjaisia käyttää hyvin moni ohjelmoija, ei ole mikään uutinen.

    "Mullakin on opetettu komentoriviä peruskoulussa. Tosin ympäristö tais olla CP/M enkä menis ikinä väittämään, että komentorivit ovat pysyneet samoina."

    Minulle CP/M ja Dos. Jälkimmäisessä on jo vähemmän eroa sh -yhteensopiviin.

    "Ootkos siis tosissas, että tavalliset ihmiset oisivat jotenkin jakamassa koneitaan netin läpi itelleen?"

    No minkäs helvetin takia sitä sitten myydään jossain Mustassa Pörssissä digibokseja joita pääsee etäkäyttämään selaimella? Selvää etäkäyttöä ja tavalliset kaduntallaajat harrastaa sitä. Kännykällä on voitu pitkän aikaa laitaa sauna lämpenemään. Eli kyllä, tavalliset sukankuluttajat etäkäyttävät tekniikkaa. Nyt kun on reilut pari vuotta Linux-pohjaiset käyttöjärjestelmät yleistyneet tavallisten sukan kuluttajien parissa niin kerro nyt yksikin peruste miksi niitä ei voisi etäkäyttää kun se kerran onnistuu niin helposti ja sille on selkeä tarve?

    Kotikoneen tiedostoihin pääsy käsiksi etäältä käsin on aika arkinen tarve kenelle tahansa. Ja jos käyttää vähän enemmän tekniikkaa niin on muitakin etäkäyttötarpeita. Esimerkiksi torrenttilatausten käynnistäminen, Digivirittimen tallennuksen laittaminen ja muuta vastaavaa. Ja sitten on ne ties kuinka monta kymmentä tuhatta ihmistä tässäkin maassa ketkä kommunikoi IRC:llä. Kiva päästä etäältä käsin IRC-koneeseen että voi olla kaiken aikaa online.

    Äänestä

-----

import random

pallot = range(1,40)

random.shuffle(pallot)
arvonta = pallot[:7]
arvonta.sort()

print("Ohjelma arpoi seuraavat luvut:")
for i in arvonta:
(tab) print(i, end=" ")

-------
Vika rivi on python kolmosta (ja tabit taitaa hävitä).

Pythonin random paketissa on shuffle-funktio, joka on kätevämpi ja *oikea* tapa koodata tälläinen sekoitustoiminto.

Äänestä
  • Jos nyt tulkkaan tota koodia oikeen, niin eikös toi ois pikkasen tehoton tapa arpoa vaikka seitsemän IP-osotetta tilanteessa jossa ne halutaan poimia kaikista mahollisista käyttämällä arvottaviina kohteina etumerkitöntä 32-pittistä kokonaislukua?

    Äänestä

  • Jepulis Jeep kirjoitti:

    Jos nyt tulkkaan tota koodia oikeen, niin eikös toi ois pikkasen tehoton tapa arpoa vaikka seitsemän IP-osotetta tilanteessa jossa ne halutaan poimia kaikista mahollisista käyttämällä arvottaviina kohteina etumerkitöntä 32-pittistä kokonaislukua?

    >...miksi toi ois se oikee tapa?

    Periaatteellinen ero on siinä että vasteaika on taattu ja aina sama silloin kun sekoitetaan määrätty joukko ja tulostetaan siitä haluttu määrä.

    vrt. alkuperäiseen missä arvotaan satunnaislukuja tietyltä väliltä niin monta kertaa että saadaan luku joka ei ole jo arvottujen joukossa.

    Ongelmaa ei juuri huomaa jos arvotaan vain 7/40 mutta jos pitäisi arpoa esim 30/40 niin "hukka-arpomisia" tulee jo melkoinen määrä.

    Äänestä

  • sivusta. kirjoitti:

    >...miksi toi ois se oikee tapa?

    Periaatteellinen ero on siinä että vasteaika on taattu ja aina sama silloin kun sekoitetaan määrätty joukko ja tulostetaan siitä haluttu määrä.

    vrt. alkuperäiseen missä arvotaan satunnaislukuja tietyltä väliltä niin monta kertaa että saadaan luku joka ei ole jo arvottujen joukossa.

    Ongelmaa ei juuri huomaa jos arvotaan vain 7/40 mutta jos pitäisi arpoa esim 30/40 niin "hukka-arpomisia" tulee jo melkoinen määrä.

    30/40 on aika perusteltua, mutta en kyllä pitäs tota ekaakaan ollenkaan vääränä tapana koska luvut on mitä on ja samalla systeemillä vois tehä hyvin seittämän luvun ottamisen tosijaan vaikka niistä ip-numeroista ilman kovaa ylimäärästä touhua.

    Mut joo, tässähän se nähään taas, että oikeella alkoritmilla oikeeseen ongelmaan ja hommat hoituu.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Jos nyt tulkkaan tota koodia oikeen, niin eikös toi ois pikkasen tehoton tapa arpoa vaikka seitsemän IP-osotetta tilanteessa jossa ne halutaan poimia kaikista mahollisista käyttämällä arvottaviina kohteina etumerkitöntä 32-pittistä kokonaislukua?

    Joo, on se tehoton jos määrä on suuri, koska sekoitetaan koko taulukko/lista. Mutta ei siinä ole muutenkaan mitään järkeä tehdä 2^32 kokoista taulukkoa. Lisäksi todennäköisyys että tulee 'törmäys' eli sama IP-osoite on häviävän pieni.

    Mutta alkuperäisessä lotto-jutussa määrä on pieni, joten oikeampi on shuffle (jossa swapataan listan olioita) ja jos määrä on suuri niin pythonissa on muuten sample-funktio.

    random.sample(xrange(10000000), 5)
    => [9207400, 9328647, 3885127, 5884577, 1968174]

    (Viiden otos väliltä 0-1000000)

    Shufflen swappaus-tapa on myös loogisempi, aloittajan kirjakoodihan menisi reaalimaailmassa jotakuinkin näin:

    1. Arvotaan pallo
    2. Merkitään tulos ylös listaan, jos *ei ole* jo listassa
    3. Palautetaan pallo *takaisin* lottokoneen rumpuun
    4. Toistetaan 1-3 kunnes 7 palloa

    Shuffle taasen:
    1. Arvotaan pallo
    2. Jätetään pallo lottokoneen putkeen
    3. Toistetaan 1-2 kunnes 7 palloa

    Ekaa pidettäisiin reaalimaailmassa hölmöläisten hommana.

    On erittäin hyvä harjoitus yrittää itse toteuttaa shuffle-algoritmi ja *testata* että sen jakauma on tasainen. Vaikka koodi on lyhyt niin sen voi munata hyvin helposti (mikä on hyvin opettavaista).
    Lisä harkkana voi tehdä osittaisen sekoituksen (ei koko listaa, vain haluttu määrä), jota voi käyttää jos tarvitaan nopeutta (jolloin Python tosin tippuu jo muutenkin pois).

    Matskua:
    http://en.wikipedia.org/wiki/Shuffling#Shuffling_algorithms
    http://en.wikipedia.org/wiki/Fisher-Yates_shuffle (varoitus: ratkaisu javakoodina)

    Joku valopää keksi kuinka Rubyn sortilla (!!) voi sekoittaa, mutta jakauma menee pieleen:
    http://szeryf.wordpress.com/2007/06/19/a-simple-shuffle-that-proved-not-so-simple-after-all/

    Äänestä

  • 'oikea'-tapa kirjoitti:

    Joo, on se tehoton jos määrä on suuri, koska sekoitetaan koko taulukko/lista. Mutta ei siinä ole muutenkaan mitään järkeä tehdä 2^32 kokoista taulukkoa. Lisäksi todennäköisyys että tulee 'törmäys' eli sama IP-osoite on häviävän pieni.

    Mutta alkuperäisessä lotto-jutussa määrä on pieni, joten oikeampi on shuffle (jossa swapataan listan olioita) ja jos määrä on suuri niin pythonissa on muuten sample-funktio.

    random.sample(xrange(10000000), 5)
    => [9207400, 9328647, 3885127, 5884577, 1968174]

    (Viiden otos väliltä 0-1000000)

    Shufflen swappaus-tapa on myös loogisempi, aloittajan kirjakoodihan menisi reaalimaailmassa jotakuinkin näin:

    1. Arvotaan pallo
    2. Merkitään tulos ylös listaan, jos *ei ole* jo listassa
    3. Palautetaan pallo *takaisin* lottokoneen rumpuun
    4. Toistetaan 1-3 kunnes 7 palloa

    Shuffle taasen:
    1. Arvotaan pallo
    2. Jätetään pallo lottokoneen putkeen
    3. Toistetaan 1-2 kunnes 7 palloa

    Ekaa pidettäisiin reaalimaailmassa hölmöläisten hommana.

    On erittäin hyvä harjoitus yrittää itse toteuttaa shuffle-algoritmi ja *testata* että sen jakauma on tasainen. Vaikka koodi on lyhyt niin sen voi munata hyvin helposti (mikä on hyvin opettavaista).
    Lisä harkkana voi tehdä osittaisen sekoituksen (ei koko listaa, vain haluttu määrä), jota voi käyttää jos tarvitaan nopeutta (jolloin Python tosin tippuu jo muutenkin pois).

    Matskua:
    http://en.wikipedia.org/wiki/Shuffling#Shuffling_algorithms
    http://en.wikipedia.org/wiki/Fisher-Yates_shuffle (varoitus: ratkaisu javakoodina)

    Joku valopää keksi kuinka Rubyn sortilla (!!) voi sekoittaa, mutta jakauma menee pieleen:
    http://szeryf.wordpress.com/2007/06/19/a-simple-shuffle-that-proved-not-so-simple-after-all/

    Toisaalta taas tehoeroa loton tapauksessa ei juuri ole suuntaan tai toiseen. Shufatessa pitää järkätä kuitenkin kaikki noi uusiks jonka jälkeen valitaan joku niistä. Arvottaessa taas tulee ehkä jokunen sama ja arvonta tehään uudelleen. Hyvä osata tehä molemmilla tavoilla koska sitten kun sen osaa, niin voi soveltaa tota.

    Pikasesti en muuten nähnyt .NET:ssä tommosta shufflea valmiina. Siitä yks pointsi pyyttonille. .NET:ssä pitää vähintään kopipeistata netistä toi koodi jos sen haluaa.

    Hmm.. Reaalimaailmassahan se menee näin:

    1. laitetaan pallot pönttöön
    2. shuffletaan
    3. otetaan yksi
    4. mennään kakkoseen jos otettu alle 9
    5. Muistetaan järjestys ja julistetaan kaksi vikaa varanumeroiksi

    Ihmettelin muuten joskus lapsena sitä miten kone pysty käymään 99.9% kaikista arvotuista riveistä läpi kahessa minuutissa. Toi kaks minuuttia läpikäyntiajaks kerrottiin joskus jossain lähetyksessä.

    Nykysin ihmettelen sitä vieläkin, koska puolitushaulla sen löytäisi museokoneellakin hetkessä. Tosin oliskohan ongelma ollut siinä, että muistin vähyyden vuoksi datat eli kupongit piti olla muistinauhalla. Tämä oli siis sitä aikaa kun kuponkien vastaanotto kauantain arvontaan lopetettiin joskus torstaina illalla.

    Oikeestaan joku tommonen lottojuttu ois hieno tehtävä antaa jollain kurssilla silleen, että rajotteena ois just erilaisia konemalleja kuten joskus on ollutkin. Omaan commodore 64:n ei ois mahtunut kaikkia arvottuja numeroita ihan helpolla. Joskus 80-luvulla rivejä tais olla jossain arvonnassa käytetty kaks miljoonaa telkun mukaan. Siinä ois ollut 1541:llä iso pinkka lerppuja.

    Äänestä

Koodissasi oli virhe
print(i, end ´ ´)
tulisi kirjoittaa
print(i, end=´ ´)

Älä käytä IDLEä, koska sen antamat virheilmoitukset tekevät pythonin opiskelusta tuskaa. Komentoriviltä olisit jo päässyt paremmin kärryille missä on vika.
Jos haluat käyttää editoria, joka kertoo sinulla vähän tarkemmin missä mennään, niin hanki vaikka activeStaten KomodoEdit tai joku vastaava, joka osaa ohjeistaa vähän paremmin sinua (Eclipse pydev tai emacs pylint).

Oheinen koodin pätkä on mainio esimerkki yksinkertaisesta ja ymmärrettävästä algoritmista tehdä lottonumeroiden arvonta. Pythonissa on paljon valmista ja erittäin tehokasta tavaraa koodin tuottavuuden tehostamiseksi, mutta ne ovat olemassa siellä sitten kun on perusteet oppinut. Vanha kunnon esimerkki ohjelman kontrollirakenteiden opiskeluun.

Python on mahtava kieli, mutta sen valitseminen ensimmäiseksi kieleksi ohjelmoinnin perusteiden opiskeluun on hiukan kyseenalainen. Kielen tulkattavuudesta ja dynaalisista muuttujamekanismeista (tämä on sama huoli monien tulkattavien kielien kohdalla) johtuen ohjelmaan tehdyt virheet löytyvät vasta, usein pitkällisen, ajon aikana, jos silloinkaan. Esimerkiksi
perinteinen ajatusvirhe
al=5
if a1 == 5:
print ("al on viisi")

jää helposti huomaamatta.

Lint-tyyppiset ohjelmat voivat olla tässä hyvähkö ratkaisu vaikkakin ne eivät aina pelasta, johtuen Pythonin dynaamisuudesta.
Eclipseen on olemassa Pydev-nimien lisäosa, jossa pyLint taitaa olla osana.

Siitä parhaasta alkeisopetuskielestä voidaan olla montaa mieltä, koska yhtenäisyyttä ei tunnu syntyvän. Se, opetataanko algoritmeja ja tietorakenteita, sulautettuja järjestelmiä, rinnakkaisuuden asioita vai olio-ohjelmoinnnin perusteita vaikuttaa melkoisesti kielen valintaan. Ja teollisuuden intressit tietysti vaikuttavat kielen valintaan.

Kuitenkin onnea kielen ja ohjelmoinnin opiskeluun. Muista, että melko useissa kirjoissa (monesti suomeksi kirjoitetussa) on esimerkeissä virheitä.

GUI asiaan sen verran, että Nokia on tuottamassa QT:ta Linux/Maemo-purkkeihinsa. Ei ainakaan vielä S60 tai S40 luureihinsa. wxPython (wxGadgets python) voisi olla ihan kohtuullinen GUI-kirjasto. Vähän taas riippuu siitä mitä yritä tehdä ja missä ympäristössä. Katso tuolta lisää
http://wiki.python.org/moin/GuiProgramming. Jos haluat opiskella 2D/3D-juttuja, niin niihenkin on omat kirjastosta (kysy lisää googlelta ;-)

Äänestä
  • Joo en kyllä itekkään oo tosiaan kovin ihastunut siihen ajatukseen, että koodaajia opetetaan luistamaan vahvasta tyypityksestä kun esim. kannat ovat sitten kuitenkin käytännössä vahvaan tyypitykseen pohjautuvia.

    Harmi kun nää koodaamaan opettelevat eivät kovinkaan usein kerro mitä sillä koodaustaidolla pitäs tehä. Kysehän on kuitenkin oikeestaan samasta asiasta kuin siitä, että joku haluis opetella liikkumaan paikasta toiseen ja kysyis mikä väline kannattaa opetella. Siinä sitten toinen suosittelee autoa, toinen lentsikkaa ja kolmas kävelemistä eikä kenenkään neuvot oikeestaan osu välttämättä oikeeseen jos kaveri tarttis oikeestaan sittenkin polkupyörää.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Joo en kyllä itekkään oo tosiaan kovin ihastunut siihen ajatukseen, että koodaajia opetetaan luistamaan vahvasta tyypityksestä kun esim. kannat ovat sitten kuitenkin käytännössä vahvaan tyypitykseen pohjautuvia.

    Harmi kun nää koodaamaan opettelevat eivät kovinkaan usein kerro mitä sillä koodaustaidolla pitäs tehä. Kysehän on kuitenkin oikeestaan samasta asiasta kuin siitä, että joku haluis opetella liikkumaan paikasta toiseen ja kysyis mikä väline kannattaa opetella. Siinä sitten toinen suosittelee autoa, toinen lentsikkaa ja kolmas kävelemistä eikä kenenkään neuvot oikeestaan osu välttämättä oikeeseen jos kaveri tarttis oikeestaan sittenkin polkupyörää.

    "Joo en kyllä itekkään oo tosiaan kovin ihastunut siihen ajatukseen, että koodaajia opetetaan luistamaan vahvasta tyypityksestä kun esim. kannat ovat sitten kuitenkin käytännössä vahvaan tyypitykseen pohjautuvia."

    Turhaa oppimiskäyrän jyrkentämistä. Sitten voi siirtyä vahvaan tyypitykseen kun saa piirrettyä vaikka sinikäppyrän ruudulle, tulostettua Hello Wordit ja tehtyä jotain ehtoja ja taulukoita.

    Joku Java onkin siksi huono kieli opetteluun kun siinä pitäisi jo ymmärtää heti suoraan olioiden käsitteet. Aivan liikaa omaksumista sellaiselle joka ei ole yhtään ohjelmoinut.

    Äänestä

  • m-kar kirjoitti:

    "Joo en kyllä itekkään oo tosiaan kovin ihastunut siihen ajatukseen, että koodaajia opetetaan luistamaan vahvasta tyypityksestä kun esim. kannat ovat sitten kuitenkin käytännössä vahvaan tyypitykseen pohjautuvia."

    Turhaa oppimiskäyrän jyrkentämistä. Sitten voi siirtyä vahvaan tyypitykseen kun saa piirrettyä vaikka sinikäppyrän ruudulle, tulostettua Hello Wordit ja tehtyä jotain ehtoja ja taulukoita.

    Joku Java onkin siksi huono kieli opetteluun kun siinä pitäisi jo ymmärtää heti suoraan olioiden käsitteet. Aivan liikaa omaksumista sellaiselle joka ei ole yhtään ohjelmoinut.

    Kyllä kuule tolla VB.NET:llä voi tehä aika pitkällekin meneviä harjotuksia ilman, että tarvii ollenkaan miettiä olioita.

    Ja jos haluttaa niin eikun Microsoftin Small Basic koneeseen ja harjottelemaan ohjelmointia ilman, että tarvii olioita miettiä.

    Javalla tarvii ehkä ymmärtää vähän tarkemmin kun sitä ei saa semmosena versiona joka antais ollenkaan yhtä paljon anteeks kun toi VB.NET:n simppelein säätö.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Kyllä kuule tolla VB.NET:llä voi tehä aika pitkällekin meneviä harjotuksia ilman, että tarvii ollenkaan miettiä olioita.

    Ja jos haluttaa niin eikun Microsoftin Small Basic koneeseen ja harjottelemaan ohjelmointia ilman, että tarvii olioita miettiä.

    Javalla tarvii ehkä ymmärtää vähän tarkemmin kun sitä ei saa semmosena versiona joka antais ollenkaan yhtä paljon anteeks kun toi VB.NET:n simppelein säätö.

    "Kyllä kuule tolla VB.NET:llä voi tehä aika pitkällekin meneviä harjotuksia ilman, että tarvii ollenkaan miettiä olioita."

    Mutta entä ilman IDE:n miettimistä? Siinäkin kun on jyrkennetty oppimiskäyrää tapahtumapohjaisella ohjelmoinnilla ja jokainen komponentti on olio. Pythoniahan onnistuu käyttämään käyttöliittymänä kuten 8-bittisten koneiden Basiccia ja antaa suoran vasteen mitä sille syöttää lausekkeita. (Kyllä, niillä oli erittäin helppo opetella ohjelmoinnin perusteita). Tässä jos missä on matala oppimiskäyrä.

    Entä jos onkin kyseessä tietojenkäsittelyn opiskelija tai sellaiseksi aikova? Siellähän porukalla on järjestäen koneina Macbookit ja nyt sitten jakoivat opiskelijoille Asus EEE miniläppärit. Taas on nämä realiteetit vähän hukassa.

    Ja onhan se Python nyt kielenä ihan eri luokassa kuin Visual Basic. VB kun on ollut kuoleva kieli pitkän aikaa ja C# on syrjäyttämässä sitä. Pythonille nyt on kuitenkin enemmän monipuolista käyttöä kun VB on ollut perinteisesti se ns. korporaatiosoftien kälityökalu ja tietokantaliityntöjen tekoon.

    Äänestä

  • m-kar kirjoitti:

    "Kyllä kuule tolla VB.NET:llä voi tehä aika pitkällekin meneviä harjotuksia ilman, että tarvii ollenkaan miettiä olioita."

    Mutta entä ilman IDE:n miettimistä? Siinäkin kun on jyrkennetty oppimiskäyrää tapahtumapohjaisella ohjelmoinnilla ja jokainen komponentti on olio. Pythoniahan onnistuu käyttämään käyttöliittymänä kuten 8-bittisten koneiden Basiccia ja antaa suoran vasteen mitä sille syöttää lausekkeita. (Kyllä, niillä oli erittäin helppo opetella ohjelmoinnin perusteita). Tässä jos missä on matala oppimiskäyrä.

    Entä jos onkin kyseessä tietojenkäsittelyn opiskelija tai sellaiseksi aikova? Siellähän porukalla on järjestäen koneina Macbookit ja nyt sitten jakoivat opiskelijoille Asus EEE miniläppärit. Taas on nämä realiteetit vähän hukassa.

    Ja onhan se Python nyt kielenä ihan eri luokassa kuin Visual Basic. VB kun on ollut kuoleva kieli pitkän aikaa ja C# on syrjäyttämässä sitä. Pythonille nyt on kuitenkin enemmän monipuolista käyttöä kun VB on ollut perinteisesti se ns. korporaatiosoftien kälityökalu ja tietokantaliityntöjen tekoon.

    Vosian Studion IDE:n oppii puolessa tunnissa ja sen jälkeen sen ajan säästää loppupäivän aikana moneen kertaan kun IDE opastaa eteenpäin sitä oppijaa. Niin helppoo.

    Asus EEE läppäreiden jakaminen oli taas melkosta huumoria kun tarkemmin miettii. Miniläppäreiden noin ensimmäistä sukupolvea ja heikkotehosta tauhkaa verrattuna vähänkin uudempiin mineihin. Näyttö vielä vanhemmissa semmonen, että huh huh. Ihanko oikeesti niillä porukka tekee töitä tai sitten ostelee lisämonttua joka onkin hirveen näppärä.

    Vai että oikeens yrjäyttämässä C#...? Noi VB.NET ja C# on niin samanlaisia kieliä, että toisesta toiseen siirtyy hetkessä ja niissä on tosi vähän eroja vaikka niitäkin on. Helppoa tehä kummalla vaan. Ite tykkään tehä mielellään .NET C#:lla. Mukavan tuottavaa.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Vosian Studion IDE:n oppii puolessa tunnissa ja sen jälkeen sen ajan säästää loppupäivän aikana moneen kertaan kun IDE opastaa eteenpäin sitä oppijaa. Niin helppoo.

    Asus EEE läppäreiden jakaminen oli taas melkosta huumoria kun tarkemmin miettii. Miniläppäreiden noin ensimmäistä sukupolvea ja heikkotehosta tauhkaa verrattuna vähänkin uudempiin mineihin. Näyttö vielä vanhemmissa semmonen, että huh huh. Ihanko oikeesti niillä porukka tekee töitä tai sitten ostelee lisämonttua joka onkin hirveen näppärä.

    Vai että oikeens yrjäyttämässä C#...? Noi VB.NET ja C# on niin samanlaisia kieliä, että toisesta toiseen siirtyy hetkessä ja niissä on tosi vähän eroja vaikka niitäkin on. Helppoa tehä kummalla vaan. Ite tykkään tehä mielellään .NET C#:lla. Mukavan tuottavaa.

    "Vosian Studion IDE:n oppii puolessa tunnissa ja sen jälkeen sen ajan säästää loppupäivän aikana moneen kertaan kun IDE opastaa eteenpäin sitä oppijaa."

    Vain kokeneelle tietokoneen käyttäjälle. Ohjelmoinnin opettelua aikovalle Notepadissäkin voi olla oppimista.

    "Ihanko oikeesti niillä porukka tekee töitä tai sitten ostelee lisämonttua joka onkin hirveen näppärä."

    Muistiinpanoja varten opiskelujen yhteyteen kai ja että voi näppärästi omalla koneella ajaa jotain ohjelmaesimerkkejä tms. Käyttävät myös IRC:tä tiedonvälittämisessä.

    Äänestä

  • m-kar kirjoitti:

    "Vosian Studion IDE:n oppii puolessa tunnissa ja sen jälkeen sen ajan säästää loppupäivän aikana moneen kertaan kun IDE opastaa eteenpäin sitä oppijaa."

    Vain kokeneelle tietokoneen käyttäjälle. Ohjelmoinnin opettelua aikovalle Notepadissäkin voi olla oppimista.

    "Ihanko oikeesti niillä porukka tekee töitä tai sitten ostelee lisämonttua joka onkin hirveen näppärä."

    Muistiinpanoja varten opiskelujen yhteyteen kai ja että voi näppärästi omalla koneella ajaa jotain ohjelmaesimerkkejä tms. Käyttävät myös IRC:tä tiedonvälittämisessä.

    Heh joo. Joillain niistä tekeekin jotain.

    Ohan toi oma muotinsa. Pisnespuolella sitten näkee noidenkin todellisen hyötyasteen kun opiskelijoiden heh ... tarpeet unohetaan.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Heh joo. Joillain niistä tekeekin jotain.

    Ohan toi oma muotinsa. Pisnespuolella sitten näkee noidenkin todellisen hyötyasteen kun opiskelijoiden heh ... tarpeet unohetaan.

    Oma EEE901 on kyllä ihan helvetin hyvä läppäri. Boottaa muutamassa sekunnissa, pieni ja kevyt, ihan julmetun hyvä prossu (pyörittää multimediat ja käy viileänä), läppärissä ei puhaltimet käytännössä juuri pyöri kun pistää virransäästömoodin päälle (joka ei edes koneen suorituskyvyssä näy), 20Gt SSD josta 16Gt vapaana, akku kestää katsoa leffojakin 6h.. Mahtava kone.

    Harvemmin on saanu missään noin paljon vastinetta rahoille.

    Äänestä

  • m-kar kirjoitti:

    Oma EEE901 on kyllä ihan helvetin hyvä läppäri. Boottaa muutamassa sekunnissa, pieni ja kevyt, ihan julmetun hyvä prossu (pyörittää multimediat ja käy viileänä), läppärissä ei puhaltimet käytännössä juuri pyöri kun pistää virransäästömoodin päälle (joka ei edes koneen suorituskyvyssä näy), 20Gt SSD josta 16Gt vapaana, akku kestää katsoa leffojakin 6h.. Mahtava kone.

    Harvemmin on saanu missään noin paljon vastinetta rahoille.

    Pientä on, mutta että opiskelijalle työkaluks? Siis vaikka koodaamaan opettelevalle? Vähän on ahasta ja jos ostaa erillisen näytön niin siinä menee sen minin idea.

    Ei oo paljoo hintaeroa halvoissa tavallisissa läppäreissä ja näyttö on heti paljon suurempi ja muutenkin on potkua lisää.

    Ei silti, onhan noille mineille käyttöä ja hyviäkin ovat. Tota opiskelijavalintaa vaan ihmettelen kun vois kuvitella ettei suurin ongelma nykyopiskelijoillakaan oo siinä laitteen suuruudessa.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Pientä on, mutta että opiskelijalle työkaluks? Siis vaikka koodaamaan opettelevalle? Vähän on ahasta ja jos ostaa erillisen näytön niin siinä menee sen minin idea.

    Ei oo paljoo hintaeroa halvoissa tavallisissa läppäreissä ja näyttö on heti paljon suurempi ja muutenkin on potkua lisää.

    Ei silti, onhan noille mineille käyttöä ja hyviäkin ovat. Tota opiskelijavalintaa vaan ihmettelen kun vois kuvitella ettei suurin ongelma nykyopiskelijoillakaan oo siinä laitteen suuruudessa.

    "Pientä on, mutta että opiskelijalle työkaluks? Siis vaikka koodaamaan opettelevalle? Vähän on ahasta ja jos ostaa erillisen näytön niin siinä menee sen minin idea."

    En nyt ole ihan varma mitä ne opiskelijoille jaetut minit ovat, mutta tuttu koodailee kyllä ihan ahkerasti omalla EEE901:llä ja siihen 1024x600 ruudulle menee näppärästi just pari sorsatiedostoa auki.

    Äänestä

  • m-kar kirjoitti:

    "Pientä on, mutta että opiskelijalle työkaluks? Siis vaikka koodaamaan opettelevalle? Vähän on ahasta ja jos ostaa erillisen näytön niin siinä menee sen minin idea."

    En nyt ole ihan varma mitä ne opiskelijoille jaetut minit ovat, mutta tuttu koodailee kyllä ihan ahkerasti omalla EEE901:llä ja siihen 1024x600 ruudulle menee näppärästi just pari sorsatiedostoa auki.

    Mä tykkään, että ruudulla ois jotain ainakin kaksinkertainen määrä pikseleitä, mutta kai toi on sitten tottumiskysymys. Riippuu kanssa mitä tekee, mut joku Eclipse vaatii sekin jo vähän enempi tilaa kun vaikka vanha Latticen C.

    Ei silti, pieni on kätevä reissussa.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Mä tykkään, että ruudulla ois jotain ainakin kaksinkertainen määrä pikseleitä, mutta kai toi on sitten tottumiskysymys. Riippuu kanssa mitä tekee, mut joku Eclipse vaatii sekin jo vähän enempi tilaa kun vaikka vanha Latticen C.

    Ei silti, pieni on kätevä reissussa.

    Tuttava koodasi kyllä Emacsilla. Sanoi että oikein hyvin toimii kun saa siihen pari tiedostoa vierekkäin auki joten oli sujuvaa koodata.

    Äänestä

Ensiksi sanottakoon että virhe oli ihan oma, ei kirjan tekijän. Eli yhtäkuin merkki oli jäänyt pois, tosin "hipsuiksi" koodi itselläni vaati normaalit lainausmerkit (joita tuli toki aiemminkin koitettua muttakun puuttui se yhtäkuin merkki. Siis selvyyden vuoksi, viimeinen rivi toimi kun oli muotoa:

print(i, end = " ")



Mitä tulee muihin ohjelmointikieliin, niin joskus c alket tullut opeteltua ja koulussa ok numero tuli c-alkeista sittemmin, mutta tämä siis tosiaan alkeista. Ohjelmointikielen valintaa taasen en ihmeemmin ole kysynyt, se tulee pysymään pythonina (kun jo käyttänyt kirjallisuuteen rahaakin), joten sikäli vertaus miten liikkua pisteestä a pisteeseen b ei ole täysin osuva. Kiitos kuitenkin mielipiteistä. Todettakon kuitenkin että mahdolliset muut kielet voisivat olla sitten java tai c sillä en tahdo opetella vain windows ohjelmointia. Nytkin tekisin harjoitukset linuxista käsin, mutta en jaksanut asentaa uutta pythonia vielä, kun kohta teen uutenkin uuden asennuksen (nyt toimii ulkoiselta kovolta asennus). En silti ole mikään lnux guru mikä on helposti pääteltävissä, kunhan tykkään käyttää sitä, eikä mulla windowsiakaan vastaan mitään ole. Molemmilla puolensa.

Kiitos jokatapauksessa vinkeistä, täytyy perehtyä noihin alkeisiin vielä tarkemmin eikä heti oikoa yrittämään guila varustettua versiota (jota en saanut toimimaan vaikka no gui versio toimikin nytten.. :)

Äänestä
  • Suurin osa porukasta tuntuu olevan aika hakusessa sen suhteen, mitä meinaavat tehä ohjelmointitaidoillaan jos semmosia hankkivat. Tieto siitä, että haluut tehä Linukalle softia, on hieno juttu. Silloin opeteltavien rajaaminen on huomattavasti helpompaa ja menee fiksummin.

    Äänestä

Kommentoi aloitusta


python 3 kirjoitti:

Elikkäs tuossa python gui aiheessa asiaa sivusinkin toisessa postauksessani, mutta kysynpä nyt eri otsakkeessa. Seuraava esimerkki on suoraan kirjasta, ilman guita siis, mutta ei toimi (tämä foorumi poistaa sisennykset btw):

---------

# -*- coding: cp1252 -*-

import random

numerot = []

while True:
if len(numerot) == 7:
break
luku = random.randint(1,39)
if luku not in numerot:
numerot.append(luku)
   
numerot.sort()
print("Ohjelma arpoi seuraavat luvut:")
   
for i in numerot:
print(i, end ´ ´)

--------

Kun tämän ajaa IDLE editorissa Run => Run module, tulee virheilmoitus: invalid character in identifier

jakoodissa punaisena merkitään tuo lopun "hipsujen" välinen välilyönti, ei tietty auta ilman välikään, eikä sekän että yrittänyt hipsujen paikalle muita vastaavankaltaisia merkkejä, ja kirjassa merkittynä nimenomaan noin.

Tällä tulee tietty olemaan vaikutusta jatkossakin kun pidemmälti opiskelee, joten mikäköhän tuon tässä yksinkertaisessa esimerkissä mahtaa aheuttaa?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu