有时候我们需要判断两个字符串内容是否相等,判断内容相等,我们用‘==',但是有时候发现print(str1)和print(str2)眼看着一模一样,但是用==时却是false
可能会被这种问题莫名郁闷很久,其实问题有可能很简单,如果你的两个字符串末尾有其他符号,比如回车‘\n',print()的时候是看不到回车符的,所以,用以下来判断:
str1 = str1.strip() #去掉字符串中其他符号包括换行符等等
str2 = str2.strip()
if str2 == str1:
... #自己的代码
...
补充知识:python2和python3中关于不等于运算符的区别
Python2:如果用到不等于运算符,既可以使用<>也可以使用!=,代码如下:
python@python:/home/share/2py$ ipython
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
In [1]: print(23 <> 24)
True
In [2]: print(23 != 24)
True
-----------------------------分割线-------------------------------
Python3k:如果用到不等于运算发,只能用!=,不能使用<>,代码如下:
python@python:/home/share/2py$ ipython3
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
In [1]: print(3 <> 3)
SyntaxError: invalid syntax
In [2]: print(3 != 3)
False
以上这篇python 两个一样的字符串用==结果为false问题的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。
Powered By python教程网 鲁ICP备18013710号
python博客 - 小白学python最友好的网站!