je cherche simplement à comparer deux variables pour vérifier qu'un login existe sur le système ou pas.
j'ai pensé que ceci fonctionnait:
login=form1.lineEdit1_1.text()
opfil=open('/etc/passwd','r')
lines = opfil.readlines()
for i in lines:
valdon=i.split(':')[0]
print str(valdon),str(login)
if str(login) == str(valdon):
print "Cet identifiant existe !"
opfil.close()
Mais, si les retours des prints sont corrects, quel que soit le login fourni, il ne m'est jamais dit qu'il existe (alors que je sais parfaitement que oui).
Pourtant, la comparaison a l'air correcte... Où est l'erreur ?
# Chez moi ça marche...
Posté par Amand Tihon (site web personnel) . Évalué à 2.
[^] # Re: Chez moi ça marche...
Posté par rangzen (site web personnel) . Évalué à 2.
[^] # Re: Chez moi ça marche...
Posté par mberro . Évalué à 1.
Avec ton code, ça fonctionne, avec le mien, non.
Une subtilité avec readlines?
En tout cas merci, j'ai appris une autre façon de faire que mon usine à gaz.
[^] # Re: Chez moi ça marche...pas
Posté par mberro . Évalué à 1.
[^] # Re: Chez moi ça marche...pas
Posté par mberro . Évalué à 1.
si je fait un print "*********"+shellus2+"*******" je m'apperçois qu'il me prend le saut de ligne dans la variable shellus2.
Ce qui est somme toute logique avec le split.
Comment puis je m'en débarasser, ou ne prendre que le texte sans le saut de ligne ?
[^] # Re: Chez moi ça marche...pas
Posté par rangzen (site web personnel) . Évalué à 1.
[^] # Re: maintenant, si!
Posté par mberro . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.