Hi, ich hab ein Problem:
In einer Funktion wir mir eine Variable geliefert, die so aufgebaut ist:
(x, y, z)
Wie bekomme ich das ganze jetzt in ein array?
also:
position[0] = x
position[1] = y
position[2] = z
MfG Krauzi
Variable aufteilen
Verstehe ich nicht: Du hast ein Tuple in der Form, die Du haben willst, oder? Wo ist das Problem? Du kannst das Kind doch auch "position" nennen. Falls ich Dich falsch verstanden habe, zeige doch einfach mal ein bißchen Code.
das problem ganz von vorne:
mit einer funktion wird ein object an einer bestimmten stelle erstellt. Diese Bestimmte stelle wird so bestimmt:
Dannach "sollte" das object hiermit (nur ein teil des codes, der euch eh nichts sagen würde):
allerdings MUSS nach object.absolutePosition ein x/y/z stehen.
Die funktion attacker.getDefaultVehicle().getPosition() liefert mir allerdings nur x,y,z aus. Das muss einfach in x/y/z umgewandelt werden.
das würde dann so auschauen:
mit einer funktion wird ein object an einer bestimmten stelle erstellt. Diese Bestimmte stelle wird so bestimmt:
Code: Alles auswählen
attackerpos = attacker.getDefaultVehicle().getPosition()
Code: Alles auswählen
[...]
host.rcon_invoke('"Object.absolutePosition " + str(attackerpos)')
[..]
Die funktion attacker.getDefaultVehicle().getPosition() liefert mir allerdings nur x,y,z aus. Das muss einfach in x/y/z umgewandelt werden.
das würde dann so auschauen:
Code: Alles auswählen
host.rcon_invoke("Object.absolutePosition " + str(position[0]) + "/" + str(position[1] + "/" + str(position[2])
Da brauchst Du doch nichts umwandeln:MfG
HWK
Code: Alles auswählen
host.rcon_invoke("Object.absolutePosition %s/%s/%s" % (x, y, z))
HWK
Code: Alles auswählen
host.rcon_invoke("Object.absolutePosition " + "/".join(map(str, position)))
PS zu langsam ... HWKs Lösung ziehe ich auch im Allgemeinen vor ...
-
- User
- Beiträge: 36
- Registriert: Mittwoch 5. April 2006, 14:11
- Wohnort: Köln
x, y und z sind vermutlich Integer, richtig?
http://docs.python.org/lib/typesseq-strings.html
Code: Alles auswählen
x, y, z = attacker.getDefaultVehicle().getPosition()
host.rcon_invoke('"Object.absolutePosition %i/%i/%i"' % (x, y, z))
hä? ich versteh euch nicht.
Die funktion [attacker.getDefaultVehicle().getPosition()] gibt z.b. das hier
aus:
(-160.95599365234375, 162.2977294921875, -266.51699829101562)
ich brauch das allerdings ohne klammern und anstelle von kommas brauche ich Schrägstriche (/).
wenn ich x,y,z = attacker.get...... schreibe habe ich doch 3 variablen, die den selben wert haben in meinem fall z.b. (-160.95599365234375, 162.2977294921875, -266.51699829101562).
Das bringt mir wohl nicht viel. Ich muss es z.b. so schreiben:
also: ich muss die variable attackerpos durchsuchen und die werte die zischen ( und , ;zwischen , und ,; und zwischen , und ) rausfiltern. Nur wie mach ich das?
Die funktion [attacker.getDefaultVehicle().getPosition()] gibt z.b. das hier
aus:
(-160.95599365234375, 162.2977294921875, -266.51699829101562)
ich brauch das allerdings ohne klammern und anstelle von kommas brauche ich Schrägstriche (/).
wenn ich x,y,z = attacker.get...... schreibe habe ich doch 3 variablen, die den selben wert haben in meinem fall z.b. (-160.95599365234375, 162.2977294921875, -266.51699829101562).
Das bringt mir wohl nicht viel. Ich muss es z.b. so schreiben:
Code: Alles auswählen
host.rcon_invoke("Object.absolutePosition -160.95599365234375 / 162.2977294921875 / -266.51699829101562")
- Rebecca
- User
- Beiträge: 1662
- Registriert: Freitag 3. Februar 2006, 12:28
- Wohnort: DN, Heimat: HB
- Kontaktdaten:
Und ob dir das was bringt!wenn ich x,y,z = attacker.get...... schreibe habe ich doch 3 variablen.
Das bringt mir wohl nicht viel. Ich muss es z.b. so schreiben:
Probier doch einfach mal aus, was die Leute oben gepostet haben, z.B. so:
Code: Alles auswählen
>>> x = 1
>>> y = 2
>>> z = 3
>>>
>>> print "%i / %i / %i" % (x, y, z)
1 / 2 / 3
Offizielles Python-Tutorial (Deutsche Version)
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei