Chcę przekonwertować liczbę całkowitą na ciąg w Pythonie. Na próżno piszę to na maszynie:
d = 15
d.str()
Kiedy próbuję przekonwertować go na ciąg znaków, pojawia się błąd, jakby int
nie miał żadnego wywołanego atrybutu str
.
W Pythonie nie ma typowania rzutów ani przymusu typu. Musisz skonwertować zmienną w sposób jawny.
Aby przekonwertować obiekt na ciąg znaków, użyj str()
funkcji. Działa z każdym obiektem, który ma __str__()
zdefiniowaną metodę o nazwie . w rzeczywistości
str(a)
jest równa
a.__str__()
To samo, jeśli chcesz przekonwertować coś na int, float itp.
Aby zarządzać danymi niecałkowitymi:
źródło
źródło
W Pythonie => 3.6 możesz użyć
f
formatowania:źródło
W Pythonie 3.6 możesz użyć nowej funkcji f-strings, aby przekonwertować na string, i jest szybszy w porównaniu do funkcji str (), jest on używany w następujący sposób:
Z tego powodu Python udostępnia funkcję str ().
Aby uzyskać bardziej szczegółową odpowiedź, możesz sprawdzić ten artykuł: Konwertowanie Python Int na String i Python String na Int
źródło
Moim zdaniem najbardziej przyzwoity sposób to ``.
źródło
repr(i)
, więc będzie dziwne na długo. (Spróbuji = `2 ** 32`; print i
)Można użyć
%s
lub.format
(LUB)
źródło
Dla kogoś, kto chce przekonwertować int na ciąg znaków w określonych cyfrach, zalecana jest poniższa metoda.
Aby uzyskać więcej informacji, zapoznaj się z pytaniem Przepełnienie stosu Wyświetl numer z wiodącymi zerami .
źródło
Wraz z wprowadzeniem ciągów f w Pythonie 3.6 to zadziała również:
Jest to w rzeczywistości szybsze niż dzwonienie
str()
, kosztem czytelności.W rzeczywistości jest szybszy niż
%x
formatowanie ciągów i.format()
!źródło