Cloud-Lösungen der Zukunft - Testen!

Revolutionäre Cloud-Technologie, ganz ohne versteckte Kosten. Profitieren Sie von unserer Testphase und entdecken Sie umfassende Funktionen. Der Anmeldeprozess ist transparent und unkompliziert. Starten Sie jetzt Ihre Reise in die Cloud - Kostenfrei!

Python String zu Int und Int zu String Konvertierung

In diesem Tutorial werden wir lernen, wie man in Python einen String zu int und int zu String konvertiert.

Python String zu Int

Wenn Sie unsere vorherigen Tutorials gelesen haben, werden Sie bemerkt haben, dass wir diese Konvertierung manchmal verwendet haben. Tatsächlich ist dies in vielen Fällen notwendig. Zum Beispiel, wenn Sie Daten aus einer Datei lesen, dann werden diese im String-Format vorliegen und Sie müssen den String in ein int konvertieren. Jetzt gehen wir direkt zum Code. Wenn Sie eine Zahl, die im String dargestellt ist, in ein int umwandeln möchten, müssen Sie die Funktion int() verwenden. Sehen Sie sich das folgende Beispiel an:

 num = '123'  # string data
    
    # print the type
    
    print('Type of num is :', type(num))
    
    # convert using int()
    
    num = int(num)
    
    # print the type again
    
    print('Now, type of num is :', type(num))


Der Output des folgenden Codes wird sein

  Type of num is : <class 'str'>
    Now, type of num is : <class 'int'>

Konvertierung von String zu Int aus verschiedener Basis

Wenn der String, den Sie in ein int umwandeln möchten, einer anderen Zahlbasis als Basis 10 angehört, können Sie die Basis für die Konvertierung angeben. Aber denken Sie daran, dass das Ausgabe-Integer immer in Basis 10 ist. Eine weitere Sache, die Sie sich merken müssen, ist, dass die angegebene Basis zwischen 2 und 36 liegen muss. Sehen Sie sich das folgende Beispiel an, um die Konvertierung von String zu Int mit dem Basis-Argument zu verstehen.

num = '123'
    # print the original string
    print('The original string :', num)
    
    # considering '123' be in base 10, convert it to base 10
    
    print('Base 10 to base 10:', int(num))
    
    # considering '123' be in base 8, convert it to base 10
    
    print('Base 8 to base 10 :', int(num, base=8))
    
    # considering '123' be in base 6, convert it to base 10
    
    print('Base 6 to base 10 :', int(num, base=6))

Der Output des folgenden Codes wird sein

 The original string : 123
    Base 10 to base 10 : 123
    Base 8 to base 10 : 83
    Base 6 to base 10 : 51

ValueError bei der Konvertierung von String zu Int

Bei der Konvertierung von String zu Int kann es zu einer ValueError-Ausnahme kommen. Diese Ausnahme tritt auf, wenn der String, den Sie konvertieren möchten, keine Zahlen darstellt. Angenommen, Sie möchten eine hexadezimale Zahl in ein Integer umwandeln. Aber Sie haben das Argument base=16 in der Funktion int() nicht angegeben. Es wird eine ValueError-Ausnahme auslösen, wenn es eine Ziffer gibt, die nicht zum dezimalen Zahlensystem gehört. Das folgende Beispiel wird diese Ausnahme bei der Konvertierung eines Strings zu Int illustrieren.

    """
    Scenario 1: The interpreter will not raise any exception but you get wrong data
    """
    num = '12'  # this is a hexadecimal value
    # the variable is considered as decimal value during conversion
    print('The value is :', int(num))
    # the variable is considered as hexadecimal value during conversion
    print('Actual value is :', int(num, base=16))
    """
    Scenario 2: The interpreter will raise ValueError exception
    """
    num = '1e'  # this is a hexadecimal value
    # the variable is considered as hexadecimal value during conversion
    print('Actual value of \'1e\' is :', int(num, base=16))
    # the variable is considered as decimal value during conversion
    print('The value is :', int(num))  # this will raise exception

Der Output des obigen Codes wird sein:

    The value is : 12
    Actual value is : 18
    Actual value of '1e' is : 30
    Traceback (most recent call last):
      File "/home/imtiaz/Desktop/str2int_exception.py", line 22, in 
        print('The value is :', int(num))  # this will raise exception
    ValueError: invalid literal for int() with base 10: '1e'

Python Int zu String

Die Konvertierung eines Int zu String erfordert keine Anstrengung oder Überprüfung. Sie verwenden einfach die Funktion str(), um die Konvertierung durchzuführen. Sehen Sie sich das folgende Beispiel an.

  hexadecimalValue = 0x1eff
    
    print('Type of hexadecimalValue :', type(hexadecimalValue))
    
    hexadecimalValue = str(hexadecimalValue)
    
    print('Type of hexadecimalValue now :', type(hexadecimalValue))

Der Output des folgenden Codes wird sein:

    Type of hexadecimalValue : <class 'int'>
    Type of hexadecimalValue now : <class 'str'>

Fazit

Das ist alles zur Python-Konvertierung von String zu Int und Int zu String.

Starten Sie Ihre Cloud-Reise mit unserer kostenlosen Trial-Version!

Entdecken Sie die grenzenlosen Möglichkeiten unserer Cloud-Dienste ganz unverbindlich. Melden Sie sich jetzt für unsere kostenlose Trial-Version an und erleben Sie, wie unsere innovativen Lösungen Ihr Business transformieren können.

Try for free!