您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何将可变数量的参数格式化为字符串?

如何将可变数量的参数格式化为字符串?

您可以str.join()在列表中使用 不带 字符串格式的内容,然后对 结果 进行插值:

"Hello %s" % ', '.join(my_args)

演示:

>>> my_args = ["foo", "bar", "baz"]
>>> "Hello %s" % ', '.join(my_args)
'Hello foo, bar, baz'

如果您的某些参数还不是字符串,请使用列表理解:

>>> my_args = ["foo", "bar", 42]
>>> "Hello %s" % ', '.join([str(e) for e in my_args])
'Hello foo, bar, 42'

或使用map(str, ...)

>>> "Hello %s" % ', '.join(map(str, my_args))
'Hello foo, bar, 42'

您将对函数执行相同的操作:

function_in_library("Hello %s", ', '.join(my_args))

如果受(相当随意的)限制的限制,您不能join在插值参数列表中使用a,请改用ajoin来创建格式字符串:

function_in_library("Hello %s" % ', '.join(['%s'] * len(my_args)), my_args)
其他 2022/1/1 18:50:58 有377人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶