Teilen Sie ganze Zahlen in Ziffern in Python

Vaibhhav Khetarpal 30 Januar 2023
  1. Verwenden Sie List Comprehensions, um eine ganze Zahl in Ziffern in Python aufzuteilen
  2. Verwenden Sie die Funktionen math.ceil() und math.log(), um in Python eine ganze Zahl in Ziffern aufzuteilen
  3. Verwenden Sie die Funktionen map() und str.split(), um in Python eine ganze Zahl in Ziffern aufzuteilen
  4. Verwenden Sie eine for-Schleife, um eine ganze Zahl in Ziffern in Python aufzuteilen
Teilen Sie ganze Zahlen in Ziffern in Python

In diesem Tutorial werden verschiedene Methoden zum Aufteilen einer Ganzzahl in Ziffern in Python erläutert.

Verwenden Sie List Comprehensions, um eine ganze Zahl in Ziffern in Python aufzuteilen

List Comprehensions ist eine viel kürzere und elegantere Möglichkeit, Listen zu erstellen, die basierend auf gegebenen Werten einer bereits existierenden Liste gebildet werden sollen.

In dieser Methode werden neben dem List Comprehensions auch die Funktionen str() und int() verwendet, um die ganze Zahl in Ziffern aufzuteilen. Die Funktionen str() und int() werden verwendet, um eine Zahl in einen String und dann in eine ganze Zahl umzuwandeln.

Der folgende Code verwendet List Comprehensions, um eine ganze Zahl in Python in Ziffern aufzuteilen.

num = 13579
x = [int(a) for a in str(num)]
print(x)

Ausgabe:

[1, 3, 5, 7, 9]

Die Zahl num wird zuerst mit str() im obigen Code in einen String umgewandelt. Dann wird das List Comprehensions verwendet, das die Zeichenkette in diskrete Ziffern zerlegt. Abschließend werden die Ziffern mit der Funktion int() wieder in eine ganze Zahl umgewandelt.

Verwenden Sie die Funktionen math.ceil() und math.log(), um in Python eine ganze Zahl in Ziffern aufzuteilen

Das Aufteilen der Ganzzahl in Ziffern in Python kann durchgeführt werden, ohne die Zahl zuerst in einen String umzuwandeln. Darüber hinaus ist diese Methode etwa doppelt so schnell wie die Konvertierung zuerst in einen String.

Die Funktion math.ceil() rundet eine Zahl auf eine ganze Zahl auf. Die Funktion math.log() liefert den natürlichen Logarithmus einer Zahl. Um beide Funktionen nutzen zu können, sollten wir die Bibliothek math importieren.

Das Modul math kann als immer zugängliches und Standardmodul in Python definiert werden. Es bietet Zugriff auf die grundlegenden Funktionen der C-Bibliothek.

Der folgende Code verwendet List Comprehensions, die Funktionen math.ceil() und math.log(), um eine ganze Zahl in Python in Ziffern aufzuteilen.

import math

n = 13579
x = [(n // (10 ** i)) % 10 for i in range(math.ceil(math.log(n, 10)) - 1, -1, -1)]
print(x)

Ausgabe:

[1, 3, 5, 7, 9]

Verwenden Sie die Funktionen map() und str.split(), um in Python eine ganze Zahl in Ziffern aufzuteilen

Die Funktion map() implementiert eine angegebene Funktion für jedes Element in einem Iterable. Der Artikel wird dann als Parameter an die Funktion übergeben.

Die Methode split() dient, wie der Name schon sagt, dazu, einen String in eine Liste aufzuteilen. Es hat eine grundlegende Syntax und enthält zwei Parameter, separator und maxsplit.

Die Zahl muss bereits im Zeichenkettenformat vorliegen, damit diese Methode verwendet werden kann.

Der folgende Code verwendet die Funktionen map() und str.split(), um eine ganze Zahl in Python in Ziffern aufzuteilen.

str1 = "1 3 5 7 9"
list1 = str1.split()
map_object = map(int, list1)

listofint = list(map_object)
print(listofint)

Ausgabe:

[1, 3, 5, 7, 9]

Hier haben wir die Methode str.split() verwendet, um die angegebene Zahl im String-Format in eine Liste von Strings aufzuteilen, die jede Zahl enthält. Dann wird die Funktion map() verwendet, die verwendet wird, um ein Kartenobjekt zu generieren, das jeden String in eine ganze Zahl umwandelt. Schließlich wird mit list(mapping) eine Liste aus dem Kartenobjekt erstellt.

Verwenden Sie eine for-Schleife, um eine ganze Zahl in Ziffern in Python aufzuteilen

Bei dieser Methode verwenden wir eine Schleife und führen die Slicing-Technik bis zur angegebenen Anzahl von Stellen (in diesem Fall A=1) aus und verwenden dann schließlich die Funktion int() zur Umwandlung in eine ganze Zahl.

Der folgende Code verwendet int()+loop+slice, um eine ganze Zahl in Python in Ziffern aufzuteilen.

str1 = "13579"
# initializing substring
A = 1
# create a result list
result = []
for i in range(0, len(str1), A):
    # convert to int, after the slicing process
    result.append(int(str1[i : i + A]))

print("The resultant list : " + str(result))

Ausgabe:

The resultant list : [1, 3, 5, 7, 9]
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Verwandter Artikel - Python Integer

Verwandter Artikel - Python String