0
votes

Comment supprimer des espaces lors de l'impression de la liste?

def lexemize_Ari_Exp():
    
    arithmeticExpression = input("Write an Arithmetic Expression: ")
    list_Of_Arit_Exp = []
  
    for x in arithmeticExpression:
        list_Of_Arit_Exp.append(x)
    print(list_Of_Arit_Exp)
        
lexemize_Ari_Exp()
#Input: x + 1#Output: ['x', ' ', '+', ' ', '1']

2 commentaires

Quelle est exactement la sortie que vous recherchez?


Ajoutez simplement la fonction .split () à la fin de votre saisie et supprimez le reste.


3 Réponses :


0
votes

Si chaque élément de l'expression est divisé par un espace, vous pouvez simplement utiliser la fonction split() :

Write an Arithmetic Expression: x + 1
['x', '+', '1']

Exemple de sortie:

def lexemize_Ari_Exp():
    
    arithmeticExpression = input("Write an Arithmetic Expression: ")
    list_Of_Arit_Exp = arithmeticExpression.split()
    
    print(list_Of_Arit_Exp)
        
lexemize_Ari_Exp()


0 commentaires

0
votes

Vous pouvez simplement ajouter une instruction if comme celle-ci:

for x in arithmeticExpression:
    if not x == ' ':
        list_Of_Arit_Exp.append(x)

Cela est dû au fait que votre boucle for itère sur chaque caractère de la chaîne d'entrée et que x représente simplement le caractère dans chaque itération.


0 commentaires

0
votes
list = [0, 1, 0]
print (remove (list, 0))#Remove all the 0 from the list

0 commentaires