使用元组进行打印的更好方法是什么?

时间:2015-09-24 20:37:37

标签: python

我正在制作一个简单的mad-libs esque代码,但我找不到更有效的方法来执行此操作。

print madlib1 % (madlib1_answers[0],madlib1_answers[1],madlib1_answers[2],madlib1_answers[3],madlib1_answers[4],madlib1_answers[5],madlib1_answers[6],madlib1_answers[7],madlib1_answers[8],madlib1_answers[9],madlib1_answers[10],madlib1_answers[11],madlib1_answers[12])

madlib1只是一个变量字符串,每个答案都有%s&s;而madlibs总共有13个答案。

2 个答案:

答案 0 :(得分:4)

如果您切换为使用.format(),则可以像这样展开madlib1_answers

print madlib1.format(*madlib1_answers)

这样可以让您使用format specification language

一个警告,如果你的格式比你未格式化的字符串中的说明符多,它将丢弃任何额外的值。

答案 1 :(得分:2)

有很多方法可以做到这一点:

# If madlib1_answers is already a tuple with correct number of elements
print madlib1 % madlib1_answers

# If you need to crop the tuple:
print madlib1 % madlib1_answers[:13]

# If it's not a tuple yet
print madlib1 % tuple(madlib1_answers)
相关问题