簡體   English   中英

子列表成字符串 Python

[英]Sublist into String Python

我有一個小問題,我有這段代碼,我需要將最終打印轉換為字符串,以便能夠在不同的行中打印最終結果並將分隔符“,”更改為“+”。 如果有人可以幫助我解決這個問題,我將不勝感激:D。

提前致謝^^。

前任。:

輸入: 7

Output:

5 + 2

5 + 1 + 1

2 + 2 + 2 + 1

2 + 2 + 1 + 1 + 1

2 + 1 + 1 + 1 + 1 + 1

1 + 1 + 1 + 1 + 1 + 1 + 1

代碼:

def change(coins, amount)
      res = []
      def getchange(end, remain, cur_result):
        if end < 0: return
        if remain == 0:
            res.append(cur_result)
            return
        if remain >= coins[end]:
            getchange(end, remain - coins[end], cur_result + [coins[end]])
        getchange(end - 1, remain, cur_result)
    
     getchange(len(coins) - 1, amount, [])
     return res

q = int(input("Write your change: "))
st = change([1, 2, 5, 10], q)
print(st)

將您的最后一行代碼從print(st)更改為

for s in st:
    print('+'.join((map(str,s))))

如果st是整數列表,則可以將其更改為

print(" + ".join(str(s) for s in st))

生成器和推導通常優於map操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM