Python 如何获取单词列表,并删除具有多个相同字母的任何单词
假设我有5个单词的列表Python 如何获取单词列表,并删除具有多个相同字母的任何单词,python,list,Python,List,假设我有5个单词的列表 my_list = ['python', 'apple', 'always', 'sky', 'lie'] 如何使用函数逐个扫描每个单词,并删除具有相同字母的任何单词多次出现 因此,在函数运行之后,列表应该只包含 my_list = ['python', 'sky', 'lie'] 一行: result = [item for item in my_list if len(item) == len(set(item))] 使用列表理解创建新列表 使用set检查长度
my_list = ['python', 'apple', 'always', 'sky', 'lie']
如何使用函数逐个扫描每个单词,并删除具有相同字母的任何单词多次出现
因此,在函数运行之后,列表应该只包含
my_list = ['python', 'sky', 'lie']
一行:
result = [item for item in my_list if len(item) == len(set(item))]
- 使用列表理解创建新列表
- 使用
检查长度是否改变(这意味着存在重复)set
def is_unique_string(s):
return len(s) == len(set(s))
result = [item for item in my_list if is_unique_string(s)]
这里已经有一个讨论:。这是你的答案
list = ['python', 'apple', 'always', 'sky', 'lie']
new_list = []
for string in list:
if len(string) == len(set(string)):
new_list.append(string)
print(new_list)
检查第n个字符是否在第n个字符处切片的字符串中。即
“苹果”
- 在“pple”中勾选“a”
- 选中“ple”中的“p”,匹配
def has_duplicate(s):
for x in xrange(len(s)-1):
if s[x] in s[x+1:]:
return true
return false
l=["python", "apple", "always", "sky", "lie"]
y=[s for s in l if not has_duplicate(s)]