Kann man in Python beim input-Befehl den Variablentyp schon im voraus deklarieren ?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Spielkamerad
User
Beiträge: 8
Registriert: Dienstag 3. November 2015, 02:08

Dienstag 3. November 2015, 02:55

Hallo !

Ich bin mit Python erst vor ein paar Tagen angefangen.

Hier ist mein Beispiel -->


import numpy as np

n = input ("Ordnung des Systems : ")

n = int(n)

a = np.zeros(shape=(n+1,n+1))


Wenn ich die Zeile n = int(n) weglasse, dann bekomme ich bei a = np.zeros(shape=(n+1,n+1)) eine Fehlermeldung, weil ausschließlich Integer - Werte erwartet werden.

Wenn ich für n mit dem input-Befehl eine ganze Zahl eingebe, dann wird n trotzdem nicht als Integer angesehen.

Meine Frage lautet nun, ob es in der Zeile n = input ("Ordnung des Systems : ") eine Möglichkeit gibt, von Anfang an n als Integer zu deklarieren, so dass es mir möglich wird die Zeile n = int(n) wegzulassen.

Außerdem, was ist in Python der beste Weg, um einen Datentyp in einen anderen umzuwandeln ?

LG
Sirius3
User
Beiträge: 8410
Registriert: Sonntag 21. Oktober 2012, 17:20

Dienstag 3. November 2015, 08:18

@Spielkamerad: die Umwandlung in eine ganze Zahl erfolgt am einfachsten mit int. input liefert immer einen String, und man muss explizit sagen, in was man diesen String umwandeln will. Du kannst es kürzer in einer Zeile schreiben:

Code: Alles auswählen

n = int(input("Ordnung des Systems : "))
Spielkamerad
User
Beiträge: 8
Registriert: Dienstag 3. November 2015, 02:08

Dienstag 3. November 2015, 13:52

@Sirius3

Recht herzlichen Dank für deine Antwort ! Du hast mir 100 % weitergeholfen !

LG
Spielkamerad
User
Beiträge: 8
Registriert: Dienstag 3. November 2015, 02:08

Dienstag 3. November 2015, 14:18

@Sirius3

Deine Antwort ist aus irgend einem Grund, den ich nicht kenne, verschwunden.

Das war deine Antwort -->

n = int(input ("Ordnung des Systems : "))

anstelle von

n = input ("Ordnung des Systems : ")

n = int(n)
BlackJack

Dienstag 3. November 2015, 14:40

@Spielkamerad: Die Antwort ist noch da, sowohl im HTML als auch im DOM, aber sie wird aus irgendwelchen Gründen nicht angezeigt weil es noch Probleme mit dem Plugin zum Anzeigen/Highlighten von Quelltexten gibt, nach der Umstellung des Forums auf die neue Version.
Spielkamerad
User
Beiträge: 8
Registriert: Dienstag 3. November 2015, 02:08

Dienstag 3. November 2015, 23:56

@BlackJack

Ok, vielen Dank für deine Meldung !

LG
Antworten