python 判断2个字符串字符是否完全一样 顺序可不同
方法1:先对字符串中字符排序 ,再使用== 号比较字符串是否相同;
代码:
在这里插入代码片defcompare_two_str(a,b):#判断2个字符串字符是否完全一样 顺序可不同iflen(a)!=len(b):returnFalsereturnsorted(a)==sorted(b)
方法2:把字符串变为字典 ,字符作为字典的key,字符数量作为字典的value,
然后比较2个字典是否相同;
**说明:适用于python3中 字典比较key,value值是否相同
代码:
在这里插入代码片
```def compare_two_str(a,b):iflen(a)!=len(b):returnFalse#适用于python3版本字符串比较
a_dict= to_dict(a)
b_dict= to_dict(b)return a_dict== b_dictdefto_dict(s):
s= s.strip()
new_map={}for iin s:if inotin new_map:
new_map[i]=1else:
new_map[i]+=1return new_map
二、写单元测试
在这里插入代码片import unittestfrom myFunimport compare_two_strclassTest(unittest.TestCase):#测试函数compare_two_str 测试2个字符串中字符相同的情况deftest_compare_two_str(self):
self.assertEqual(compare_two_str('daaabbcc','aabbccad'),True,'正确')# 测试2个字符串中字符不相同的情况deftest_compare_two_str_2(self):
self.assertEqual(compare_two_str('daaabbcc','eaabbccad'),False,'错误')if __name__=='__main__':
unittest.main()