尝试使用多个参数进行 .append,怎么做?
尝试使用多个参数进行 .append,怎么做?
这个问题已经有答案了:
我正在尝试将一组对象组合成一个单一的对象追加到列表的末尾。有没有办法我可以做到这一点?
我已经尝试使用多个参数进行.append,也尝试了搜索其他函数,但到目前为止我还没有找到任何函数。
yourCards = [] cards =["Ace","Two","Three","Four","Five","Six","Seven","Eight","Nine","Ten","Jack","Queen","King"] suits = ["Hearts","Diamonds","Clubs","Spades"] yourCards.append(cards[random.randint(0,12)],"of",suits[random.randint(0,3)])
我期望列表只是有一个新元素,例如\"Two of Hearts\",但是我遇到了以下错误:
TypeError: append() takes exactly one argument (3 given)
admin 更改状态以发布 2023年5月21日
您正在发送append()
多个参数而不是字符串。请将参数格式化为字符串,如下所示。此外,如@JaSON所述,random.choice()
比random.randint()
更好。
3.6+使用f-strings
yourCards.append(f"{random.choice(cards)} of {random.choice(suites)}")
使用.format()
yourCards.append("{} of {}".format(random.choice(cards), random.choice(suites)))
字符串连接
yourCards.append(str(random.choice(cards)) + " of " + str(random.choice(suites))) #You likely don't need the str() but it's just a precaution
改进Alex的join()
方法
' of '.join([random.choice(cards), random.choice(suites)])