使用Python 2.6
我希望能够将00000,000.00004和001等数字转换为字符串。这样每个字符串分别为'00000','000.00004'和'001'。
执行此操作的方式也必须与所有数字相同,并且在字母输入时也应对。例如。 foo应该变为'foo',2bar应该变成'2bar'但001应该仍然是'001'。
使用str([object]),上面的数字将分别变为'0','4e-05'和'1'。
有什么想法吗?
编辑:
@unholysampler(以及其他所有人)你当然是对的。
我只是感到困惑,因为Sqlite3正在接受字符串,然后在将它们放入数据库时将它们转换为整数或浮点数,尽管它被声明为字符串列。但这完全是另一个问题。
第二次编辑:
如果有人好奇为什么Sqlite3会这样做,那是因为我实际上已经将列设置为模式中的'STRING'类型,它应该是'TEXT'类型(参见http://www.sqlite.org/datatype3.html) - 这与Sqlite的“动态打字”(见http://www.sqlite.org/faq.html#q3)相结合,足以让我感到困惑: - )
感谢您提供了很好的答案:D
答案 0 :(得分:8)
没有数字0000或001.只有0和1.如果要生成数字的字符串表示,可以使用string formatting填充零。
n = 1
print '%03d' % n //001
答案 1 :(得分:0)
第一步是:但是你得到一个你认为应该是00000而不是0的数字......实际上并没有将它转换为数字。只需将其保留为字符串即可。