gpt4 book ai didi

python - 我正在尝试创建一个程序,将 2 个(用户)输入转换为列表,然后在列表中打印重复项

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:07 25 4
gpt4 key购买 nike

出于某种原因,程序打印了重复项,但不是全部。例如,如果 list1 = 'test'list2 = 'test' 它打印 ['t','e','s']

dublicates = []
x = input('type something : ')
y = input('type something again : ')
list1 = list(x)
list2 = list(y)
for i in list2:
if i not in dublicates:
dublicates.append(i)
print (dublicates)
end = input('press enter to exit')

最佳答案

你的初始逻辑不起作用,因为当它到达最后一个字符 t 时,它已经存在于 duplicates 列表中,所以 如果我不在duplicates: 被评估为 False 并且最后一个 t 没有添加到 duplicates 列表

对于您的重复逻辑,您应该检查 x 中的字符是否存在于 y 中,如果存在,则将其添加到 重复 列表,您也不需要将string 转换为list,而是可以直接迭代字符

duplicates = []
x = input('type something : ')
y = input('type something again : ')

#Iterate through x
for i in x:
#For every character in x, check if it present in y
if i in y:
duplicates.append(i)

print(duplicates)
end = input('press enter to exit')

输出将是

type something : test
type something again : test
['t', 'e', 's', 't']
press enter to exit

获取重复项的类似列表理解方式是

duplicates = [ i for i in x if i in y]

关于python - 我正在尝试创建一个程序,将 2 个(用户)输入转换为列表,然后在列表中打印重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56098494/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com