【发布时间】:2021-10-06 10:20:00
【问题描述】:
我最近开始了成为一名程序员的漫长而艰巨(但很充实)的旅程,目前我正在努力在最新版本的 Python 中获得字符串格式化的基础知识。
在查看字符串格式化的 3 种主要方法时,我无法将解包运算符 (*) 的使用与使用 % 字符串格式化运算符的字符串格式化结合起来。
我在使用字符串点格式时没有这个问题:
>>> L = ["Bob", "Frank", "Joe"]
>>> names = "Looking for {}, {}, {}"
>>> print(names.format(*L))
Looking for Bob, Frank, Joe
但是,使用 % 字符串格式,我收到错误消息:
>>> Names = "Looking for %s, %s, %s"%*L
SyntaxError: invalid syntax
>>> Names = "Looking for %s, %s, %s"%(*L)
SyntaxError: can't use starred expression here
有没有什么办法可以将解包操作符与%字符串格式结合起来,还是只能在字符串点格式的上下文中使用?
塞巴斯蒂安
【问题讨论】:
-
我会亲自做
print(f"Looking for {', '.join(L)}")!输入更少,无论L中有多少个名字,它都能正常工作。
标签: python string formatting