0

我的代码中有一个列表,看起来像。L = ['Nickname', '35'] 当我尝试i = int(L[2])捕获异常时

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

我究竟做错了什么?

      namesplitted = line.split()
      lnum += 1 
      truename = namesplitted[0]
      kills = namesplitted[1]
      print kills
      >>> 34
      i = int(kills[1])
4

1 回答 1

2

这是因为您的号码'35'位于L[1]。列表索引在 Python 中从 0 开始。所以第一个元素是L[0],第二个是L[1],依此类推。

你的清单可能是L = ['Nickname', '35', '']

>>> L = ['Nickname', '35', '']
>>> int(L[2])

Traceback (most recent call last):
  File "<pyshell#142>", line 1, in <module>
    int(L[2])
ValueError: invalid literal for int() with base 10: ''
>>> int(L[1])
35
于 2013-08-04T18:12:20.580 回答