对于下面的代码:
command = '\'{:.' + str(3) + 'f}\'.format(' + str(12.6543423) + ')'
print(command)
print('{:.3f}'.format(12.6543423))
print(exec(command))
预期结果:
'{:.3f}'.format(12.6543423)
12.654
12.654
实际结果:
'{:.3f}'.format(12.6543423)
12.654
None
有人可以告诉我我做错了什么以及如何解决吗?我既试图编写一个数字舍入函数,又试图理解 exec 命令。
请您参考如下方法:
或者根本不使用 exec 或 eval。使用 format 提供的功能:
>>> '{:.{}f}'.format(12.6543423, 3)
12.654
