Domanda Variabile int,float

kali lover

Utente Iron
5 Settembre 2022
21
10
0
18
Ciao a tutti sto seguendo un corso su youtube di python e praticamente ho scritto questo "bot " (vi allego il programma )
Python:
# bot per te
nome_bot = "Ciruzzo"
età_bot = 11
print("We! uaionce so " + nome_bot + " e ho " + str(età_bot) + " anni")
user_name = input("Tu come ti chiami?")
print("Ue " + user_name + "!")
user_age = int (input("Quanti anni hai?") )
age_difference = user_age - età_bot # differenza di età
print(str(user_age)+" "+ "Marò!Sono "+ str(age_difference)+ " Più di me")
print("Vabbuo... a presto!")

prendendo in considerazione la variabile user_age volevo sapere se potevo renderla sia di tipo int che float ?
ringrazio tutti in anticipo
 
Ultima modifica:
Ciao a tutti sto seguendo un corso su youtube di python e praticamente ho scritto questo "bot " (vi allego il programma )
Python:
# bot per te
nome_bot = "Ciruzzo"
età_bot = 11
print("We! uaionce so " + nome_bot + " e ho " + str(età_bot) + " anni")
user_name = input("Tu come ti chiami?")
print("Ue " + user_name + "!")
user_age = int (input("Quanti anni hai?") )
age_difference = user_age - età_bot # differenza di età
print(str(user_age)+" "+ "Marò!Sono "+ str(age_difference)+ " Più di me")
print("Vabbuo... a presto!")

prendendo in considerazione la variabile user_age volevo sapere se potevo renderla sia di tipo int che float ?
ringrazio tutti in anticipo
Ciao, anche se il Python è un linguaggio di programmazione tipizzato dinamicamente, ciò non significa che una variabile di un tipo base possa avere due tipi base contemporaneamente. Quello che puoi fare è questo al massimo:
Python:
userAge = int(input("Inserisci la tua età: "))
userAge = float(userAge) #trasformo successivamente la variabile in float
O potresti utilizzare due variabili separate. Poi non ha molto senso utilizzare il tipo float per l'età di una persona, dato che questa può assumere solo valori interi. Dovresti fare un controllo sull'età dell'utente: nel caso in cui sia minore di quella del bot ti esce un numero negativo e il programma non funziona correttamente. Lo so che stai giocando, però è importante imparare subito ad utilizzare le logiche di programmazione giuste.

P.s: stai seguendo un corso si programmazione in napoletano?😂😂
 
Ultima modifica:
Ciao, anche se il Python è un linguaggio di programmazione tipizzato dinamicamente, ciò non significa che una variabile di un tipo base possa avere due tipi base contemporaneamente. Quello che puoi fare è questo al massimo:
Python:
userAge = int(input("Inserisci la tua età: "))
userAge = float(userAge) #trasformo successivamente la variabile in float
O potresti utilizzare due variabili separate. Poi non ha molto senso utilizzare il tipo float per l'età di una persona, dato che questa può assumere solo valori interi.

P.s: stai seguendo un corso si programmazione in napoletano?😂😂
Grazie mille no l'accento napoletano gli l'ho dato io.
Comunque Ciruzzo barbuto sempre piaciuto
Però mi sa che hai frainteso io voglio che la variabile user_age possa accettare sia valore int che float, in quel modo semplicemente il valore intero viene poi trasformato in decimale come se con Ciruzzo stesse dialogando un bambino di sei mesi

Ciao, anche se il Python è un linguaggio di programmazione tipizzato dinamicamente, ciò non significa che una variabile di un tipo base possa avere due tipi base contemporaneamente. Quello che puoi fare è questo al massimo:
Python:
userAge = int(input("Inserisci la tua età: "))
userAge = float(userAge) #trasformo successivamente la variabile in float
O potresti utilizzare due variabili separate. Poi non ha molto senso utilizzare il tipo float per l'età di una persona, dato che questa può assumere solo valori interi. Dovresti fare un controllo sull'età dell'utente: nel caso in cui sia minore di quella del bot ti esce un numero negativo e il programma non funziona correttamente. Lo so che stai giocando, però è importante imparare subito ad utilizzare le logiche di programmazione giuste.

P.s: stai seguendo un corso si programmazione in napoletano?😂😂
Lo so infatti sto cercando di risolvere anche quel problema
 
Grazie mille no l'accento napoletano gli l'ho dato io.
Comunque Ciruzzo barbuto sempre piaciuto
Però mi sa che hai frainteso io voglio che la variabile user_age possa accettare sia valore int che float, in quel modo semplicemente il valore intero viene poi trasformato in decimale come se con Ciruzzo stesse dialogando un bambino di sei mesi


Lo so infatti sto cercando di risolvere anche quel problema
Per accettare sia interi che float puoi fare questa cosa:
Python:
userAge = float(input("Inserisci la tua età: "))
In questo modo se l'utente inserisse un float il programma lo acquisirebbe, ma anche se venisse inserito un intero il programma estenderebbe la precisione con la cifra decimale zero, funzionando ugualmente.
 
Ti consiglio di usare la "f" string di python per inglobare le variabili, rende il codice più pulito:
Python:
print(str(user_age)+" "+ "Marò!Sono "+ str(age_difference)+ " Più di me")
print(f"{user_age} Marò!Sono {age_difference} Più di me")