如何解决python中两个一样的字符串用==结果为false的问题

小编给大家分享一下如何解决python中两个一样的字符串用==结果为false的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

有时候我们需要判断两个字符串内容是否相等,判断内容相等,我们用‘==',但是有时候发现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的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!