Python 为什么字符串中的变量没有与连接函数连接?
我试图制作一个函数,将整数中的所有数字反向排序。我试图得到[5431],但结果却是[5,4,3,1]。我无法找出使用join函数的错误之处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) 以
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),然后加入