Python 3值错误:int()的基数为10的文字无效:''

时间:2015-02-25 12:06:14

标签: python-3.x

我在python 3中收到错误。由于我是初学者,我不知道如何解决它。请帮忙。代码如下:最初我得到了值错误但是在尝试和除了块之后,我总是得到“那不是一个值”。我该怎么做才能运行程序?

import sys
try:
    T= sys.stdin.readline()
    if 1<=int(T)<=int(10):

        for i in range(int(T)):
            N=sys.stdin.readline()
            if 1<=int(N)<=100000:

                x=sys.stdin.readline().split()
                if len(x)==int(N):

                    if 1<=int(max(x))<=1000000: 
                        x=[int(y) for y in x]
                         x=sorted(x)            
                        print (x[len(x)-1]-x[0])
                    else:print('Either value of card too high ')
                else:print('number of values is greater than number of cards')
            else:print('ERROR: cards allowed between 1-100000')
    sys.exit()

除了ValueError:     打印('那不是一个值')

1 个答案:

答案 0 :(得分:0)

>>> import sys
>>> T= sys.stdin.readline()
22
>>> int(T)
22

如果您没有提供任何有效的输入:

>>> T= sys.stdin.readline()

>>> int(T)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: ''