Hei.
Olen ajatellut opetella pythonia ja kuten kaikissa ohjeissa käsketään pitäisi aloittaa pienellä ja helpolla ohjelmalla.
Koodini on seuraava:
import autopy
import time
mouse.click(button=LEFT_BUTTON)
time.sleep(0.1)
print "suoritettu"
Eli kyseessä yksinkertainen hiirellä klikkaaminen. (aika on sitä varten että tarkoituksena olisi saada aikaan hiiren painikkeen "ränkytys")
Jostain syystä en saa koodia toimimaan... Autopy on asennettu.
Voisiko joku osoittaa sokealle missä virhe on?
Jatkoksi sitten pyytäisin neuvoa kuinka saan aikaan seuraavan tavoite toteutuksen:
1. siirän itse hiiren siihen kohti ruutua kuin haluan.
2. painan nappia (vaikka kirjainta p )
3. ohjelma alkaa ränkyttää hiiren painiketta.
4. ohjelma lopettaa kun painan painiketta (vaikka s)
Mallikoodi olisi kätevä?
Python ja klikkaaminen
10
138
Vastaukset
- hmhmhm
Tuo koodi painaa nappia vain kerran, koska siinä ei ole loopppia eli silmukkaa.
Jos haluat sen painavan monta kertaa sinun täytyy lisätä siihen silmukka.
Sitten jos tuo autopy ei kuulu siihen viralliseen python pakettiin, niin sinun täytyy ladata ja asentaa tuo autopy.
Sitten, minkälaisen virheviestin se antaa?
Kokeile ensin vain tulostaa tekstiä näytölle, ilman autopyta ollenkaan, se on helpoin ohjelma millä aloittaa. :)- Pythonaloittelija
Hei.
Juu tiedän :) Olin jo "purkanut" koodia osiin (niinkuin seuraavassa viestissä ehdotettiinkin) Eli nyt ei ollutkaan tarkoitus kuin saada aikaan ensimmäinen klikkaus ja jatkaa siihen silmukkaan vasta sitten.
Autopy on asennettu.
Errorina antaa ettei muka tunnista nimeä mouse.
Katselin netistä noita muita koodeja joita on käytetty tämän autopy jutun kanssa ja huomasin tälläisen yksinkertaisen koodin:
import autopy
def hello_there_world():
autopy.alert.alert("Hello, world")
hello_there_world()
Tuo koodi toimii hyvin. Onko toi def jutun puuttuminen syynä oman koodin toimimattomuuteen?
Ohjelma tulostaa myös nätisti ilman tuota autopy:tä. - hmhmhm
def sanalla määritellään funktio pythonissa. Eli funktio on pätkä koodia sisennettynä def sanan jälkeen, joka suoritetaan kun kirjoitat funktion nimen ja sulut perään.
Eli komento hello_there_world() kutsuu tuota funktiota ja vasta sitten suoritetaan sen sisältö, eli def sanan ja funktion nimenjälkeen sisennettynä oleva kood.
Funktion tehtävä on tehdä koodista uudelleenkäytettävää, esimerkiksi jos sinulla on joku laskuoperaatio mitä tarvitset monessa paikassa, laitat sen funktioon ja sitten kutsut funktiota kaikissa niissä paikoissa missä tarvitset kyseistä koodia. Silloin sinun ei tarvitse kirjoittaa samaa koodia monta kertaa, ja toisekseen jos koodissa on virhe, kun se on funktiossa, sinun tarvitsee korjata se vain yhteen paikkaan, mikä on paljon helpompaa. :)
Kannattaa tutustua vaikka tähän oppaaseen:
http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=python_01
Sitten tuosta mouse jutusta, niin minkä virheviestin se antaa?
Voit myös kokeilla googlata sillä virheviestillä. - hmhmhm
Pythonaloittelija kirjoitti:
Hei.
Juu tiedän :) Olin jo "purkanut" koodia osiin (niinkuin seuraavassa viestissä ehdotettiinkin) Eli nyt ei ollutkaan tarkoitus kuin saada aikaan ensimmäinen klikkaus ja jatkaa siihen silmukkaan vasta sitten.
Autopy on asennettu.
Errorina antaa ettei muka tunnista nimeä mouse.
Katselin netistä noita muita koodeja joita on käytetty tämän autopy jutun kanssa ja huomasin tälläisen yksinkertaisen koodin:
import autopy
def hello_there_world():
autopy.alert.alert("Hello, world")
hello_there_world()
Tuo koodi toimii hyvin. Onko toi def jutun puuttuminen syynä oman koodin toimimattomuuteen?
Ohjelma tulostaa myös nätisti ilman tuota autopy:tä.Eli siis def sana ei pitäisi olla syy. Sama koodi toimisi myös ilman funktiota, näin:
import autopy
autopy.alert("Hello, world")
:) - Pythonaloittelija
hmhmhm kirjoitti:
def sanalla määritellään funktio pythonissa. Eli funktio on pätkä koodia sisennettynä def sanan jälkeen, joka suoritetaan kun kirjoitat funktion nimen ja sulut perään.
Eli komento hello_there_world() kutsuu tuota funktiota ja vasta sitten suoritetaan sen sisältö, eli def sanan ja funktion nimenjälkeen sisennettynä oleva kood.
Funktion tehtävä on tehdä koodista uudelleenkäytettävää, esimerkiksi jos sinulla on joku laskuoperaatio mitä tarvitset monessa paikassa, laitat sen funktioon ja sitten kutsut funktiota kaikissa niissä paikoissa missä tarvitset kyseistä koodia. Silloin sinun ei tarvitse kirjoittaa samaa koodia monta kertaa, ja toisekseen jos koodissa on virhe, kun se on funktiossa, sinun tarvitsee korjata se vain yhteen paikkaan, mikä on paljon helpompaa. :)
Kannattaa tutustua vaikka tähän oppaaseen:
http://www.ohjelmointiputka.net/oppaat/opas.php?tunnus=python_01
Sitten tuosta mouse jutusta, niin minkä virheviestin se antaa?
Voit myös kokeilla googlata sillä virheviestillä.Hei.
Eli virhekoodi on seuraava:
Traceback (most recent call last):
File "C:\Users\.....\Desktop\eka ohjelma.py", line 4, in
mouse.click(button=LEFT_BUTTON)
NameError: name 'mouse' is not defined
Ja kiitos tuosta oppaasta, onnistuin sen jo kerran hukkaamaan kun katsoin ettei klikkaamisesta ollut mitään :)
Kyllähän tämä tästä pikkuhiljaa. :D Onneksi on lehmän hermot ;) - hmhmhm
Pythonaloittelija kirjoitti:
Hei.
Eli virhekoodi on seuraava:
Traceback (most recent call last):
File "C:\Users\.....\Desktop\eka ohjelma.py", line 4, in
mouse.click(button=LEFT_BUTTON)
NameError: name 'mouse' is not defined
Ja kiitos tuosta oppaasta, onnistuin sen jo kerran hukkaamaan kun katsoin ettei klikkaamisesta ollut mitään :)
Kyllähän tämä tästä pikkuhiljaa. :D Onneksi on lehmän hermot ;)Tuo virhe sanoo, että nimeä "mouse" ei ole määritelty.
Elikkä se ei löydä sellaista kuin mouse. :)
Se voi olla, että sinun pitää muuttaa se muotoon
autopy.mouse.click(LEFT_BUTTON) - hmhmhm
from autopy.mouse import LEFT_BUTTON
ja tämä ^^^^ pitää varmaan lisätä tiedoston alkuun vielä. - Pythonaloittelija
Kiitoksia neuvoista.
Nyt kun noudatin molempia noista neuvoista niin tulee uusi error viesti:
Traceback (most recent call last):
File "C:\Users\....\Desktop\eka ohjelma.py", line 4, in
autopy.mouse.click(button=LEFT_BUTTON)
TypeError: click() takes no keyword arguments - Pythonaloittelija
Hei taas.
Sain klikkauksen toimimaan kun löysin tämän sivun:
http://nullege.com/codes/search/autopy.mouse.click
Kaikki esimerkit joita tuossa annettiin eivät minulla toimineet mutta löysin toimivankin mallin :)
Eli tuossa apua niille jotka saattavat apua etsiä.
Kiitos kaikille vastanneille.
- hmhmhm
Ongelman syyn selvittämiseksi myös kannattaa jakaa se pienempiin osiin. Ota koodista niin paljon tavaraa pois, että se toimii. :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
IL - Patteriauto syttyi parkkihallissa Tampereella - 50 autoa LUNASTUKSEEN!
"Palon aikaan parkkihallissa oli 90 autoa, joista noin 50 tuhoutui palossa korjauskelvottomiksi. Lisäksi palo vaurioitti23945198Polttomoottoriauto tulessa parkkihallissa Tampereella
Pystyy näkemättä jo sanomaan, koska sähköautoissa ei ole palavia nesteitä lainkaan. Ihme ettei polttomoottoriautoja ole12325976SDP palauttaa Suomen kansalle kulta-ajat
Hyvinvointivalto on pääosin SDP:n ja osin myös Maalaisliiton rakentama. Hyvinvointivaltion ylläpito edellyttää oikeude32315654Persut JYTKYTTÄÄ ylös, ohi kepun! +2,1 %
Persut palasi kolmen suurimman joukkoon ja on matkalla kohti kevään 2027 eduskuntavaalivoittoa. Sosialistit ovat syöksy16410791Älkää vassarit kuvitelko, että Marinin kulta-ajat palaavat
Vaikka demarit voittaisivat seuraavat vaalit, se ei palauta Marinin taskut-täyteen-kelasta-aikaa takaisin, ei voi eikä h1229707Sanna Marin saa ylistystä Hillary Clintonilta
Jos joku ei tiedä kuka tämä rouva Hillary Clinton on, niin kerrottakoon "fun fact", eli hän on se keneltä Donald Trump369481Kristillisistä Siionisteista asiallista tietoa Hesarissa.
KD ja Persut ovat kaiken takana avoimesti!309383Ja jälleen uusi latauksessa olleen sähköauton palo! Nyt Keravan Prisman parkkihallissa.
IS 3.10.2025 Latauksessa ollut sähköauto syttyi yöllä tuleen Keravan Prisman parkkihallissa, Keski-Uudenmaan pelastusla858468Johtuuko vasemmistolaisten inho kristinuskoa kohtaan heidän islamin uskostaan?
Tätä jäin pohdiskelemaan.2426814Gallup, PS:lle JÄRISYTTÄVÄ nousu, SDP suurin laskija
https://yle.fi/a/74-20186114 PS kovaa vauhtia nousemassa ennen 2027 vaaleja suurimmaksi puolueeksi. Nyt mennään jo etua2216476