Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.6“;索引器:列表索引超出范围“;_Python_Python 3.x_Index Error - Fatal编程技术网

Python 3.6“;索引器:列表索引超出范围“;

Python 3.6“;索引器:列表索引超出范围“;,python,python-3.x,index-error,Python,Python 3.x,Index Error,有人能告诉我我的错误吗 realpair = input("") realpairfinal = [] rp = list(realpair) print(rp[0],rp[1]) for i in range(0, len(realpair)): a = [] v1 = rp[0] v2 = rp[1] rp.pop(0) rp.pop(0) a.append(v1) a.append(v2) realpairfinal.appe

有人能告诉我我的错误吗

realpair = input("")
realpairfinal = []
rp = list(realpair)
print(rp[0],rp[1])
for i in range(0, len(realpair)):
    a = []
    v1 = rp[0]
    v2 = rp[1]
    rp.pop(0)
    rp.pop(0)
    a.append(v1)
    a.append(v2)
    realpairfinal.append(a)
pair = realpairfinal
pair2 = realpairfinal
print(realpairfinal)
如果我的输入是123456,realpairfinal应该是[[1,2][3,4][5,6]],但它告诉我:

1 2
Traceback (most recent call last):
    v1 = rp[0]
IndexError: list index out of range
从长度中减去三。输出:
['1','2',['3','4',['5','6']]

pairs = [list(realpair[i:i+2]) for i in range(0, len(realpair), 2)]
这是使用构造列表,而不是创建空列表,然后向其添加元素


我使用长度为2的子字符串,使用list()将其转换为字符列表,然后将其添加到外部列表(使用列表理解)

这是什么意思,我在python中从未见过这样的代码。你能解释一下吗?但我感谢你在这一系列末尾的2个。。那是我的错,走吧^^是的,谢谢,这是对的,但我没有进行减法,而是对范围内的I(0,len(realpair),2)进行了
这似乎是一种更通用的记录方法,因此系统也可以获得更多或更少的输入
pairs = [list(realpair[i:i+2]) for i in range(0, len(realpair), 2)]