如何在python中使用str.format()和变量

时间:2013-11-27 19:33:21

标签: python

我想将str.format()与变量randomOne一起使用,因为%s似乎不适合我:

print('The number generated between %s and %s is' + number) % (randomOne, randomTwo)

我收到了这个错误:

TypeError: unsupported operand type(s) for %: 'nonetype' and 'tuple'

2 个答案:

答案 0 :(得分:1)

你只需要在正确的位置使用括号

print('The number generated between %s and %s is %d' % (randomOne, randomTwo, number))

答案 1 :(得分:1)

您需要对字符串执行格式化操作,而不是打印字符串的操作。这是你当前问题的原因。如果你想在这种情况下使用str.format,你可以这样做:

print('The number generated between {} and {} is {}'.format(randomOne, randomTwo, number))

如果您想坚持使用旧式字符串格式(我不建议),您可以这样做:

print('The number generated between %s and %s is %s' % (randomOne, randomTwo, number))