if __name__ == '__main__':
str1 = str('exon_PF3DZ_0100100'.split())
str2 = str('exon_PF3D7_0100100'.split())
if str1 == str2:
print 'True'
else: print 'False'
然后在比较字符串后创建一个新变量来存储结果 结果=''
之后尝试使用for循环来比较字符串
for letter in str1:
for letter in str2:
if letter(str1) != letter(str2):
result = result + letter
print (result)
由于某种原因,此代码返回 回溯(最近一次调用最后一次):
if letter(str1) != letter(str2):
TypeError:' str'对象不可调用
我不明白为什么这两个字符串不匹配?
答案 0 :(得分:1)
在循环中,变量letter
是字符串,包含当前字符。这是你的错误的原因(字符串不是函数,不能这样调用)。
对两个循环也使用相同的变量名,内循环从外循环覆盖letter
的内容。您需要使用两个不同的变量。那你然后直接比较。像:
for letter1 in str1:
for letter2 in str2:
if letter1 == letter2:
# Do something here ...