对于以下代码,我得到TypeError:格式字符串没有足够的参数
:
print("%s,%s,%s" % time.strftime("%m/%d/%Y %H:%M:%S"), (sensor.read_temperature(), (sensor.read_humidity()))
它应该以 CSV 格式将日期/时间和两个变量打印到控制台。我的格式字符串有什么问题?
最佳答案
您只需给出格式字符串一个参数;另外两个值是 print()
函数的单独参数。
移动左括号:
print("%s,%s,%s" % (
time.strftime("%m/%d/%Y %H:%M:%S"),
sensor.read_temperature(),
sensor.read_humidity())
)
现在,所有要插值的值都在一个元组中,应用于 '...' %
部分。不过,您可以在此处使用 print()
函数,将 sep
参数设置为逗号:
print(
time.strftime("%m/%d/%Y %H:%M:%S"),
sensor.read_temperature(),
sensor.read_humidity(),
sep=',')
关于python - 无法在 Python 中格式化字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33849318/