python - int()报错invalid literal for int() with base 10: ''

查看:1345
本文介绍了python - int()报错invalid literal for int() with base 10: ''的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

上图是数据库表,字段myshp为字符串。

在使用

cx = arcpy.da.UpdateCursor("myshp",["myshp"])

获取游标后,

使用下面的代码

>>> for x in cx:
...     x[0] = int(x[0])
...     

报错:invalid literal for int() with base 10: ''

这是为什么?字符串不能用int()转为整数吗?

解决方案

根据报错信息判断,尝试将空字符串转换为整数。这是不可以的。

In [1]: a = "1"

In [2]: b = "a"

In [3]: c = ""

In [4]: int(a)
Out[4]: 1

In [5]: int(b)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-5-ea313f36a39c> in <module>()
----> 1 int(b)

ValueError: invalid literal for int() with base 10: 'a'

In [6]: int(c)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-6-e60f419938be> in <module>()
----> 1 int(c)

ValueError: invalid literal for int() with base 10: ''

这篇关于python - int()报错invalid literal for int() with base 10: &#039;&#039;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆