Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中编写函数删除重复项_Python - Fatal编程技术网

在python中编写函数删除重复项

在python中编写函数删除重复项,python,Python,编写一个名为remove_duplicates的函数,该函数将接受一个名为string的参数。此字符串输入将仅包含a-z之间的字符 函数应删除字符串中的所有重复字符,并返回一个包含两个值的元组: 仅包含唯一排序字符的新字符串 删除的重复项的总数 例如: remove_duplicates('aaabbbac') => ('abc', 5) remove_duplicates('a') => ('a', 0) remove_duplicates('thelexash') =>

编写一个名为remove_duplicates的函数,该函数将接受一个名为string的参数。此字符串输入将仅包含a-z之间的字符

函数应删除字符串中的所有重复字符,并返回一个包含两个值的元组:

仅包含唯一排序字符的新字符串

删除的重复项的总数

例如:

remove_duplicates('aaabbbac') => ('abc', 5)

remove_duplicates('a') => ('a', 0)

remove_duplicates('thelexash') => ('aehlstx', 2)
这是我的解决方案,我是python新手:

string = raw_input("Please enter a string...")

def remove_duplicates(string):
  string = set(string)
  if only_letters(string):
    return (string, string.length)
  else:
    print "Please provide only alphabets"

remove_duplicates(string)
我可能做错了什么?这就是我在下面看到的错误

您的代码中有一个错误/BUG 结果: /bin/sh:1:python/nos2/bin/nos2:未找到


谢谢。

由于订单不重要,您可以使用

string = raw_input("Please enter a string...")

def remove_duplicates(string):
   new_string = "".join(set(string))
   if new_string:
     return (new_string, len(string)-len(new_string))
   else:
     print "Please provide only alphabets"

 remove_duplicates(string)

Please enter a string...aaabbbac
Out[27]: ('acb', 5)

set()将在字符串中创建一组唯一的字母,“.join()将以任意顺序将字母连接回字符串。

由于顺序不重要,您可以使用

string = raw_input("Please enter a string...")

def remove_duplicates(string):
   new_string = "".join(set(string))
   if new_string:
     return (new_string, len(string)-len(new_string))
   else:
     print "Please provide only alphabets"

 remove_duplicates(string)

Please enter a string...aaabbbac
Out[27]: ('acb', 5)

set()将在字符串中创建一组唯一的字母,“.join()将以任意顺序将字母连接回字符串。

从我正在进行的测试中收到相同的错误,我觉得错误不是来自您,而是测试人员从我正在进行的测试中收到相同的错误,我觉得错误不在你这边,而在测试仪那边

这一切正常。应该对输出进行排序

def remove_duplicates(string):
   new_string = "".join(sorted(set(string)))
   if new_string:
     return (new_string, len(string)-len(new_string))
   else:
     print "Please provide only alphabets"
无需包括以下内容:

string = raw_input("Please enter a string...")

remove_duplicates(string)

这个很好用。应该对输出进行排序

def remove_duplicates(string):
   new_string = "".join(sorted(set(string)))
   if new_string:
     return (new_string, len(string)-len(new_string))
   else:
     print "Please provide only alphabets"
无需包括以下内容:

string = raw_input("Please enter a string...")

remove_duplicates(string)

这听起来像是验证框架中的错误,而不是您的代码。我想如果您的代码不是有效的Python,测试部分可能会以模糊的方式失败:它是
len(string)
not
string.length
。您应该在发送提交之前进行本地测试,以查看此类错误。请参阅此处。在您的代码中,您没有定义“仅字母”,这听起来像是验证框架中的错误,而不是您的代码。我想,如果您的代码不是有效的Python,测试部分可能会以模糊的方式失败:它是
len(string)
而不是
string.length
。您应该在发送提交之前进行本地测试,以查看此类错误。请参阅此处。在代码中,您没有定义“仅字母”