Python:如何在不单独打印每条消息的情况下将消息写到列表中的项目?

时间:2018-11-20 19:57:52

标签: python python-3.x

在Python3中,我想编写一条覆盖列表中所有项目的通用消息(在这种情况下为晚餐客人的姓名),而不必分别打印每条消息。

例如,如果列表为:

guest_list = ['John', 'Joe', 'Jack'] 

我希望它使用每个人的姓名在下面打印此行,而不必分别打印消息3次:

print("Hello, " + *name of guest from the list above here* + "! We have found a bigger table!")

所需结果:

Hello, John! We have found a bigger table! 
Hello, Joe! We have found a bigger table! 
Hello, Jack! We have found a bigger table! 

这可能吗?如果是这样,怎么办?感谢所提供的任何帮助!

3 个答案:

答案 0 :(得分:2)

如果您只想做一个print

guest_list = ['John', 'Joe', 'Jack']
result_str = ['Hello {}! We have found a bigger table!'.format(guest) for guest in guest_list]
print(result_str.join('\n'))

答案 1 :(得分:1)

您可以使用简单的for循环:

guest_list = ['John', 'Joe', 'Jack']
for x in guest_list:
    print("Hello, " + x + "! We have found a bigger table!")
  

你好,约翰!我们找到了一张更大的桌子!

     

你好,乔!我们找到了一张更大的桌子!

     

你好,杰克!我们找到了一张更大的桌子!

答案 2 :(得分:1)

您可以执行以下操作:

for x in guest_list:
    print("Hello, %s! We have found a bigger table!" %x)

%s允许您插入一个字符串格式,该字符串格式由我传递给它的变量代替。