• [^] # Re: Chez moi ça marche...pas

    Posté par . En réponse au message Comparaison de variables avec python. Évalué à 1.

    Ca ne fonctionne pas toujours. exemple:
    #!/usr/bin/env python
    # -*- coding: iso-8859-15 -*-
    for i in file('/etc/passwd','r'):
    	login=i.split(':')[0] # on récupère le login
    	shellus=i.split(':')[6] # on récupère le shell complet utilisateur
    	shellus2=str(shellus.split('/')[2]) # on récupère le shell utilisateur
    	if shellus2 == 'bash' :
    		shellact="bash"
    	else:
    		shellact="autre"
    	print login,shellus2,shellact
    
    Je n'arrive pas à comprendre pourquoi ma comparaison est toujours fausse. Quand je fais un print de shellus2, jai bien "bash" qui s'affiche, mais quand je le compare à "bash", c'est toujours le else qui passe. J'ai essayé en mettant str(shellus2), mais pas moyen... Ca me stresse, parce qu'en bash ça me prendrait une poignée de secondes pour que ça fonctionne... Une idée?