python之字符串的邻居问题

【10分】F. 字符串的邻居问题

题目描述

生活中很多例子都涉及到字符串的“接近”问题。比如我们搜索Pytho,搜索引擎会回答“您是指Python吗?”又如,科学家检查一些核苷酸序列,想知道基因序列AGTCGTC和TAGTCGT有多匹配,或者说有多接近。

本题要探讨的一个大问题是:什么时候我们可以认为一个字符串与另一个字符串接近?或者说,我们什么时候可以将一个字符串视为另一个字符串的“邻居”?这里的“邻居”有三种可能的定义: 

(1)  如果两个字符串除了在一个位置上不一样,其他位置都一样,如“abc”和“abe”;

(2) 如果可以通过交换一个字符串中的两个相邻字符来获得另外一个字符串,如“abc”和“acb”;

(3)  如果从一个字符串中删除一个字符可以生成另一个字符串,如 “abc”和“abxc”。

 本小题关注(1)。

 输入

输入参数为两个非空的字符串str1和str2。

输出

仅当str1和str2具有相同的长度并且只在一个位置上不同时,返回True。;否则输出False。

输入样例1 read rexd
输出样例1 True
输入样例2 a a
输出样例2 False
输入样例3 a e

输出样例3True

str1,str2=map(str,input().split())
str1=list(str1)
str2=list(str2)
num=0
for i in range(len(str1)):
    if str1[i]==str2[i]:
        num+=1
if len(str1)==len(str2) and num==len(str1)-1:
    print('True')
else:
    print('False')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值