【问题标题】:String comparison in python?python中的字符串比较?
【发布时间】:2019-01-17 23:12:40
【问题描述】:

这里我试图在两个字符串中打印唯一值,

string1 = "wana"
string2 ="sana"
string3 = ""

for wrd in string1 :
    if wrd not in string2:
        string3+=wrd

上面的代码可以比较 string1 并返回不在 string2 中的输出,我想要两个字符串的唯一值,这里 S 和 W 需要附加到 string3 。 不使用函数和类怎么办?

问候

【问题讨论】:

  • 上述方法有什么问题?它是否给出任何错误或错误的输出?
  • @AkshayNevrekar ,上面只会打印 w 而不会打印 S

标签: python string python-3.x


【解决方案1】:
str1 = "sana"
str2 = "wana"
str3=""
for i in range(len(str1)):
    if(str1[i] != str2[i]):
        str3+=str1[i]+str2[i]
print(str3)

【讨论】:

  • 也许这可以帮助您在单循环中获得所需的输出
  • 位置换成字符串怎么办?
  • 你的意思是asna和awna?
【解决方案2】:

再次迭代,这次是在另一个字符串上:

string1 = "wana"
string2 ="sana"
string3 = ""

for wrd in string1 :
    if wrd not in string2:
        string3+=wrd

for wrd in string2 :
    if wrd not in string1:
        string3+=wrd

print(string3)

【讨论】:

  • 哦.. 是的,我怎么错过了它,它是另一个简单的 for 循环。 .
  • 我很高兴它有帮助!
【解决方案3】:

这是一种方法。使用set

例如:

string1 = "wana"
string2 ="sana"

string3 =  "".join(set(string1) ^ set(string2))
print(string3)

输出:

sw

【讨论】:

  • 感谢 rakesh,这是你回答我的第二个问题,他们都做得很好
  • so ,它与每个位置相匹配。是否可以为任何字符串修改这个,如string1 =fortstring 2 =flour,结果是tlu
猜你喜欢
  • 1970-01-01
  • 2016-08-19
  • 1970-01-01
  • 2019-09-19
  • 1970-01-01
  • 1970-01-01
  • 2022-01-10
  • 2012-06-14
  • 2015-09-29
相关资源
最近更新 更多