Daten in Liste? print?

  • Hallo und ein gutes Neues

    Seit einigen Tagen beschäftige ich mich mit AutoIt - noch nichts konkretes - mal nur so herum gespielt (Dateien suchen, öffnen, ergänzen, Eingaben, Meldungen ausgeben, Ini-Files, etc.)

    2 Fragen konnte ich mir bis jetzt weder mit der Hilfe, der Tut's oder Forumsuche beantworten und hoffe daher auf Eure Hilfe.

    a) print?
    wenn ...

    [autoit]

    $ergebnis = $a + $b

    [/autoit]


    ... gibt es eine Art "print"-Funktion, um den Inhalt von Variablen auf dem Bildschirm auszugeben, z.B. um zu überprüfen ob $ergebnis den gewünschten Inhalt hat
    z.B.: print($ergebnis) liefert "$ergebnis=27" (oder auch nur die "27"), vielleicht in dem Fenster, unten in Scite, wo der Programmablauf "dokumentiert" wird. (wie nennt Ihr dieses Fenster eigentlich)

    b) Daten in Liste?
    gibt es eine Möglichkeit, Daten in eine Liste zu packen
    z.B. $liste = list("abc" 17 "as47" 694)
    um diese dann nacheinander "abzuarbeiten",
    z.b. mit

    [autoit]

    for $item in $liste
    machwas mit $item
    next

    [/autoit]


    oder ähnlich?

    Wenn nicht, wie macht man sowas in AutoIt?

    Schönen Gruß
    entsel
    (hoffe, ich hab mich einigermaßen verständlich ausgedrückt)

    Schöne Grüße,
    entsel
    AutoLisp(eln) geht ganz gut, aber AutoIt nur mit Dictionary. 
    Das Problem - man sollte wissen, welche Vokabel man sucht.

    Einmal editiert, zuletzt von entsel (24. Januar 2012 um 19:12)

  • Moin,

    also zu a)

    natürlich hast du diese Möglichkeit was du suchst ist

    [autoit]

    ConsoleWrite

    [/autoit]

    Befehl alles was ausgegeben wird kommt in die Konsole rein

    zb.

    [autoit]

    $a=14
    $b=15
    Consolewrite($a+$b)

    [/autoit]

    zu b)

    ein Stichwort Array

    Ausserdem rufst du in AutoIt bei jeder Codeeingabe mit F1 die Hilfe auf.
    Heisst du schreibst

    [autoit]

    ConsoleWrite

    [/autoit]

    gehst mit Mauszeiger drauf drückst F1 und hast alles was du brauchst.Auch Beispiele etc.

    :thumbup:

  • Hallöchen
    Also die "Liste" von der du da sprichst gibt es meines Wissens nach nur in der Objekt orientierten Programmierung, das Prinzip der dynamischen liste ist in AutoIt denke ich nicht realisierbar.
    Statt dessen nehme ich immer einen Array und bei bedarf verändere ich dessen Größe mit Hilfe von ReDim

    Du scheinst schon etwas Ahnung zu haben ;)
    Ich hab mir mal deinen Vorstellungsthread angeguckt, vielleicht findest du ja noch einen anderen Nutzen für AutoIt als nur als batch ersatz ;)

    DFPWare

  • Servus

    Danke für die "ConsoleWrite()" - genau was ich gesucht hab.

    Mal klein anfangen - als batch-Ersatz - mit mehr Wissen (ich hoffe zumindest drauf ;) ) tun sich dann auch weitere Anwendungsmöglichkeiten auf.

    Ja, ich bin etwas vorbelastet - in ALisp ist alles eine Liste, sogar das Programm selbst. Vielleicht deshalb die Suche nach Bekanntem.

    Array werd ich mir anschauen, aber muss ich da nicht vorher die Anzahl der Daten/Werte wissen? In meinem Übungsbeispiel wollte ich eine (Daten-)Datei einlesen (unbekannte Länge)
    und die Daten verändern...

    SG.
    entsel

    Schöne Grüße,
    entsel
    AutoLisp(eln) geht ganz gut, aber AutoIt nur mit Dictionary. 
    Das Problem - man sollte wissen, welche Vokabel man sucht.

  • Array werd ich mir anschauen, aber muss ich da nicht vorher die Anzahl der Daten/Werte wissen? In meinem Übungsbeispiel wollte ich eine (Daten-)Datei einlesen (unbekannte Länge)
    und die Daten verändern...


    Falls die Datei Zeilentrennzeichen enthält solltest du dazu

    [autoit]

    _FileReadToArray

    [/autoit]

    verwenden,

    frohes neues Jahr

    autoBert

  • Hallo

    Danke für die Antworten -
    "MsgBox()" kannte ich schon - "ConsoleWrite()" kommt den Vorstellungen aber näher.

    Danke auch für "_FileReadToArray" - werde ich sicher brauchen können.
    Bliebe ev. noch die Möglichkeit, dass die Daten irgendwie anderweitig eingesammelt werden, aber da melde ich mich bei Bedarf und konkretem Beispiel.

    SG,
    entsel

    Schöne Grüße,
    entsel
    AutoLisp(eln) geht ganz gut, aber AutoIt nur mit Dictionary. 
    Das Problem - man sollte wissen, welche Vokabel man sucht.