-1
votes

Mettre plusieurs numéros d'une entrée dans une liste

J'essaie de mettre plusieurs taux d'intérêt d'une entrée dans une liste. Je suppose que la mise en place d'une virgule entre eux ne les séparera pas dans différentes variables de la liste? Existe-t-il une manière que je puisse les obtenir dans une liste dans une entrée ou dois-je exécuter l'entrée plusieurs fois et ajouter une fois une fois?

interest_rates_list = []


while True:
    investment = input("Please enter the amount to be invested ")
    periods = input("Please enter the number of periods for investment maturity ")
    if int(periods) < 0:
        break
    interest_rates = input("Please enter the interest rate for each period ")
    interest_rates_list.append(interest_rates)


1 commentaires

Il y a quelques options disponibles. Pour donner une réponse vraiment solide, cela vous aiderait à avoir des extrémités et des sorties.


4 Réponses :


2
votes

Si vous entrez est quelque chose comme: xxx pré>

alors vous pouvez simplement le diviser par espace et assigner à valeurs code> Liste: P>

values = input().split()


0 commentaires

0
votes

Vous pouvez split code> la chaîne d'entrée code> dans plusieurs string code>, puis le convertissez-le en float code>. Cela peut être fait en une ligne.

interest_rates = list(map(float, interest_rates.split(",")))


0 commentaires

0
votes

La fonction de la tringle Python String peut accepter un caractère délimiteur et diviser la chaîne d'entrée dans une liste de valeurs délimitées par ce caractère.

interest_rates = input("Please enter the interest rate for each period ")
interest_rates_list = interest_rates.split(",")


0 commentaires

0
votes

Si vous prenez l'entrée, vous pouvez le convertir en une chaîne à l'aide de: xxx pré>

laissez ceci être une variable A Ainsi, a = str (intérêt_rates) code> p>

maintenant, pour séparer chaque entrée des taux d'intérêt, nous faisons: p> xxx pré> > Cette fonction divise littéralement la chaîne à tous les espaces et renvoie une liste de toutes les pièces cassées. P>

Remarque: Si vous faites A.Split (* Toute chaîne ou caractère *) code> Il sera divisé au caractère mentionné. Pourrait être ',' ou ';'; ou ':', etc. p>

Maintenant, vous pouvez désormais sur la liste nouvellement formée et convertir tous les numéros stockés sous forme de chaîne vers INTS ou flotteurs en faisant P>

for i in interest _rates_list:
    i = float(i) #or int(i) based on your requirement


0 commentaires