Conversia a pluti valoare pentru an int este realizat de Conversie de tip , care este o metodă explicită de conversie a unui operand într-un anumit tip. Cu toate acestea, trebuie remarcat faptul că un astfel de tip de conversie poate avea tendința de a fi unul cu pierderi (pierderea de date). Conversia unei valori int ca 2 la virgulă mobilă va avea ca rezultat 2.0 , astfel de tipuri de conversie sunt sigure, deoarece nu ar exista pierderi de date, ci conversie 3.4 la o valoare int va avea ca rezultat 3 conducând la o conversie cu pierderi.
Exemple:
Input: 3.3 Output: 3 Input: 5.99 Output: 5>
Metoda 1: Conversie folosind int() :
Pentru a converti o valoare float în int, folosim int() încorporat funcția, această funcție decupează valorile după virgulă zecimală și returnează doar partea întreg/număr întreg.
Sintaxă: int(x)
Întoarcere: valoare intreaga
Exemplul 1: Număr de tip pluti este convertit într-un rezultat de tip int .
Python3
# conversion from float to int> num>=> 9.3> # printing data type of 'num'> print>(>'type:'>,> >type>(num).__name__)> # conversion to int> num>=> int>(num)> # printing data type of 'num'> print>(>'converted value:'>, num,> >', type:'>,>type>(num).__name__)> |
>
>Ieșire
type: float converted value: 9 , type: int>
Exemplul 2: În cele mai multe cazuri, funcția int() rotunjește rezultatul la un număr întreg mai mic sau egal cu intrarea, dar comportamentul nu este nici definit, nici previzibil. Un astfel de exemplu este prezentat mai jos.
Python3
# example of unpredictable> # behaviour of int()> num1>=> 5.9> num2>=> 5.99999999999999999999> num1>=> int>(num1)> num2>=> int>(num2)> print>(num1, num2, sep>=> '
'>)> |
>
>Ieșire
5 6>
Metoda 2: Conversie folosind math.floor() și math.ceil() .
O valoare float poate fi convertită într-o valoare int nu mai mare decât intrarea utilizând funcția math.floor(), în timp ce poate fi, de asemenea, convertită într-o valoare int care este cel mai mic număr întreg mai mare decât intrarea folosind math.ceil() funcţie. Modulul de matematică urmează să fie importat pentru a utiliza aceste metode.
Sintaxă: math.floor(x)
Parametru:
X: Aceasta este o expresie numerică.
Se intoarce: cel mai mare întreg nu mai mare decât x.
Sintaxă: math.ceil(x)
caracter cu șirParametru:
X: Aceasta este o expresie numerică.
Se intoarce: Cel mai mic număr întreg nu mai puțin de x.
Exemplu: În exemplul de mai jos, conversia de la float la int a fost realizată folosind metodele floor() și ceil(), prima returnează un int nu mai mare decât intrarea, iar cea din urmă returnează cel mai mic număr întreg mai mare decât intrarea.
Python3
# conversion using floor and ceil .> # importing math module> import> math> num>=> 5.6> floor_value>=> math.floor(num)> ceil_value>=> math.ceil(num)> print>(>'the result using floor() : '>,> >floor_value ,> >', type : '>,>type>(floor_value).__name__)> print>(>'the result using ceil() : '>,> >ceil_value,> >', type: '>,>type>(ceil_value).__name__)> |
>
>Ieșire
the result using floor() : 5 , type : int the result using ceil() : 6 , type: int>
Metoda #3: Conversie folosind rotund( ) .
O valoare float poate fi convertită într-o valoare int care este o valoare întreagă apropiată dacă nu trece al doilea parametru. În cazul unei diferențe egale, se îndreaptă către un întreg mai mare.
Sintaxă: rotund(x)
Parametru:
x: Aceasta este o expresie numerică.
Returnează: multiplu întreg al celui mai apropiat.
Exemplu: În exemplul de mai jos, conversia de la float la int a fost realizată folosind metodele round(), prima returnează un număr int care este cel mai apropiat de număr.
Python3
# conversion using round.> > num>=> 5.6> # Before conversion value and type> print>(>'Type : '>,>type>(num).__name__)> print>(>'Original number is : '>, num)> # conversion to int> value>=> round>(num)> print>(>'Type : '>,>type>(value).__name__)> print>(>'the result using round : '>,value)> |
>
>Ieșire
Type : float Original number is : 5.6 Type : int the result using round : 6>
Metoda #4: Conversie folosind math.trunc( ).
O valoare float poate fi convertită într-o valoare int. În cazul unui număr negativ se comportă ca funcția de plafon a bibliotecii de matematică, iar în cazul unui număr pozitiv se comportă ca funcția de podea.
Sintaxă: math.trunk(x)
Parametru:
x: Aceasta este o expresie numerică.
Returnează: număr întreg mai mare în cazul unui număr negativ, altfel în cazul unui număr pozitiv, un număr mai mic.
Exemplu: În exemplul de mai jos, conversia de la float la int a fost realizată folosind metodele math.trunc(), prima returnează un număr int mai mare care în cazul unui număr negativ, altfel, în cazul unui număr pozitiv, returnează un număr întreg mai mic.
Python3
# conversion using math.trunc().> > import> math> num>=> 5.6> num2>=> ->2.6> # conversion of negative number to int> value>=> math.trunc(num2)> print>(>'Type of value : '>,>type>(value).__name__)> print>(>'the result using round : '>,value)> # conversion of positive number to int> data>=> math.trunc(num)> print>(>'Type of data: '>,>type>(data).__name__)> print>(>'the result using round : '>,data)> > |
>
>Ieșire
Type of value : int the result using round : -2 Type of data: int the result using round : 5>