Python 使用*运算符和多个变量格式化字符串
我遇到了以下问题:我想用以下方式用变量填充字符串:Python 使用*运算符和多个变量格式化字符串,python,Python,我遇到了以下问题:我想用以下方式用变量填充字符串: myList = [ 1000, 2000 ] extra = "$" myString = "{listItem}{extra} {listItem}{extra}".format(listItem = *myList, extra = extra) 我在*运算符遇到无效语法错误。我想这是因为格式采用了两个参数,而不是一个参数。如果我完全删除{extra}-标记,并且只删除名称listItem,就像这
myList = [ 1000, 2000 ]
extra = "$"
myString = "{listItem}{extra} {listItem}{extra}".format(listItem = *myList, extra = extra)
我在*运算符遇到无效语法错误。我想这是因为格式采用了两个参数,而不是一个参数。如果我完全删除{extra}-标记,并且只删除名称listItem
,就像这样
myString = "{} {}".format(*myList)
代码是有效的。我需要更改什么?使用生成器格式化每个列表元素,并将它们连接在一起
myString = " ".join(f"{listItem}{extra}" for listItem in myList)
请尝试myString=“{}{extra}{}{extra}”。格式(*myList,extra=extra)