New submission from Alan Beccati <alan.becc...@gmail.com>: Hello, did I discover a python string comparison bug or is this behaviour expected and I am doing something wrong?
This is the code I run: for line in lines[4:]: currColl=line.split(":")[1].strip() print "'",currColl,"'","==","'",collName,"'" if currColl == collName : return True else: print "not equal" where currColl is a method parameter and lines is built from subprocess Popen like: p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) lines=[] for line in p.stdout.readlines(): lines.append(line) The output of the abovementioned code is: ' utm ' == ' utm10 ' not equal ' utm1000 ' == ' utm10 ' not equal ' utm100 ' == ' utm10 ' not equal ' utm10 ' == ' utm10 ' not equal ' utm1 ' == ' utm10 ' not equal as you can see the fourth comparison should return True while it gives a "not equal" as the others. Python info: Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) [GCC 4.5.2] on linux2 ---------- messages: 147854 nosy: Alan.Beccati priority: normal severity: normal status: open title: string comparison with == type: behavior versions: Python 2.7 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue13427> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com