https://github.com/TheAlgorithms/Python/blob/master/strings/remove_duplicate.py
# Created by sarathkaul on 14/11/19
def remove_duplicates(sentence: str) -> str:
"""
Reomove duplicates from sentence
>>> remove_duplicates("Python is great and Java is also great")
'Java Python also and great is'
"""
sen_list = sentence.split(" ")
check = set()
for a_word in sen_list:
check.add(a_word)
return " ".join(sorted(check))
if __name__ == "__main__":
print(remove_duplicates("INPUT_SENTENCE"))
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
方法 | 描述 |
---|---|
add() | 为集合添加元素 |
clear() | 移除集合中的所有元素 |
copy() | 拷贝一个集合 |
difference() | 返回多个集合的差集 |
difference_update() | 移除集合中的元素,该元素在指定的集合也存在。 |
discard() | 删除集合中指定的元素 |
intersection() | 返回集合的交集 |
intersection_update() | 返回集合的交集。 |
isdisjoint() | 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。 |
issubset() | 判断指定集合是否为该方法参数集合的子集。 |
issuperset() | 判断该方法的参数集合是否为指定集合的子集 |
pop() | 随机移除元素 |
remove() | 移除指定元素 |
symmetric_difference() | 返回两个集合中不重复的元素集合。 |
symmetric_difference_update() | 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。 |
union() | 返回两个集合的并集 |
update() | 给集合添加元素 |
add/update区别
myset1 = set()
myset1.add('hello')
#{'hello'}
myset1.update('world')
#{'d', 'hello', 'l', 'o', 'r', 'w'}
myset2 = set()
myset2.add('123')
myset2.update('123')
#{'1', '123', '2', '3'}
https://blog.csdn.net/weixin_42317507/article/details/91583349
discard/remove区别
使用discard和remove都可以删除set当中的元素,区别就是remove的元素在set当中没有的话会报错,而discard不会。
https://www.jianshu.com/p/a5b87feb6bfa
copy是浅拷贝,会产生一个改变另一个跟着改变的问题
网友评论