Python 为什么字符串中的变量没有与连接函数连接?

Python 为什么字符串中的变量没有与连接函数连接?,python,Python,我试图制作一个函数,将整数中的所有数字反向排序。我试图得到[5431],但结果却是[5,4,3,1]。我无法找出使用join函数的错误之处 def Descending_Order(num): num = [int(i) for i in str(num)] num.sort(reverse=True) num = str(num) "".join(num) print num Descending_Order(1534) 以

我试图制作一个函数,将整数中的所有数字反向排序。我试图得到[5431],但结果却是[5,4,3,1]。我无法找出使用join函数的错误之处

  def Descending_Order(num):
      num = [int(i) for i in str(num)]
      num.sort(reverse=True)
      num = str(num)
      "".join(num)
      print num
  Descending_Order(1534)

以下是您可能喜欢的简化版本:

def Descending_Order(num):

    return "".join(sorted(str(num), reverse=True))

print(Descending_Order(1534))
预期结果:

5431
看看这个:

 num = str(num)
num是数组,所以str(num)是一个字符串“[5,4,3,1]”,那么您就可以“.join(一个字符串)bug给出num。 权利是:

def Descending_Order(num):
  num = [int(i) for i in str(num)]
  num.sort(reverse=True)

  print ("".join(str(x) for x in  num))
Descending_Order(1534)

你必须分配它
num=“”.join(num)
str(num)不创建列表['5'、'4'、'3'、'1']?为了做到这一点,你必须使用列表理解?repea。在num.sort(reverse=True)之后,num是一个列表。str(list)创建一个字符串。您必须执行lost Comprehension(本例中为generator),然后加入