python如何将字符串转换为数字?

python

对于整数,可使用内置的 int() 类型构造器,例如 int("144")==144。 类似地,可使用 float() 转换为浮点数,例如 float("144")==144.0

默认情况下,这些操作会将数字按十进制来解读,因此 int("0144")==144int("0x144") 会引发 ValueErrorint(string,base) 接受第二个可选参数指定转换的基数,例如 int("0x144",16)==324。 如果指定基数为 0,则按 Python 规则解读数字:前缀 "0o" 表示八进制,而 "0x" 表示十六进制。

如果你只是想将字符串转为数字,请不要使用内置函数 eval()eval() 的速度会慢很多并且有安全风险:别人可能会传入具有你不想要的附带效果的 Python 表达式。 例如,别人可以传入 __import__("os").system("rm-rf$HOME") 这将删除你的家目录。

eval() 还具有将数字解读为 Python 表达式的效果,这样 eval("09") 将会导致语法错误,因为 Python 不允许十进制数的首位是 "0" ("0" 除外)。

以上是 python如何将字符串转换为数字? 的全部内容, 来源链接: utcz.com/z/520652.html

回到顶部