Python无法在鼠标回放程序中创建循环

Python无法在鼠标回放程序中创建循环,python,Python,我正在尝试创建一个python脚本,它可以读取一个数字文本文件,并将每隔一个数字设置为一个x坐标列表,并对y执行相同的操作。然后我尝试创建一个循环,可以使用x和y列表移动鼠标。我是python的新手,不断收到提供的序列必须有2个元素错误。我不知道他们是否认为我做错了什么。 数字列表如下所示: 1234 我的代码是 import pyautogui pyautogui.FAILSAFE = True f = open('mouse_log.txt', 'r') coords = [] for

我正在尝试创建一个python脚本,它可以读取一个数字文本文件,并将每隔一个数字设置为一个x坐标列表,并对y执行相同的操作。然后我尝试创建一个循环,可以使用x和y列表移动鼠标。我是python的新手,不断收到提供的序列必须有2个元素错误。我不知道他们是否认为我做错了什么。 数字列表如下所示:

1234

我的代码是

import pyautogui

pyautogui.FAILSAFE = True
f = open('mouse_log.txt', 'r')
coords = [] 

for line in f:
    inftemp = line.strip()
    coords.append(inftemp)

xlist = []
ylist = []

xlist.append(coords[::2])
ylist.append(coords[1::2])

temp = 0

for x in coords:
    pyautogui.moveTo(xlist[temp],ylist[temp])
    temp = temp + 1
回溯(最近一次调用):文件“C:\Users\Kade Hugh\Desktop\python stuff\MousePlayback.py”,第20行,在 pyautogui.moveTo(xlist[temp],ylist[temp])文件“C:\Users\Kade Hugh\AppData\Local\Programs\Python\Python36\lib\site packages\pyautogui\uuu init\uuuuu.py”, 第611行,在moveTo中 x、 y=\u解压XY(x,y)文件“C:\Users\Kade Hugh\AppData\Local\Programs\Python36\lib\site packages\pyautogui\uuu init\uuuu.py”, 第180行,in xy raise VALUERROR('提供的序列必须正好有2个元素({0}已收到)。'。格式(len(x)))VALUERROR: 提供的序列必须正好有2个元素(收到3个)


在您的示例中,
coords
是由4个数字组成的列表,
xlist
ylist
是由2个数字组成的列表

coords
中循环四个元素,每次向
temp
添加1。因此,您正在查找
xlist[0],ylist[0]
,然后是
xlist[1],ylist[1]
,然后是
xlist[2],ylist[2]
,然后是
xlist[3],ylist[3]
。但是没有
xlist[2]
ylist[2]
xlist[3]
,或者
ylist[3]
,所以如果您试图访问它们,当然会出错

您要做的是循环2次,而不是4次,或者更一般地,循环
xlist
ylist
中的元素数,而不是
coords
中的元素数

最干净的方法是直接循环列表,而不是试图找出要循环的数字。唯一棘手的一点是,您有两个单独的列表,您希望在彼此的锁定步骤中循环。但这正是目的:


复制并粘贴实际(完整)异常,不要只是给我们一个模糊的描述。@abarnert just didOK,您给我们的错误消息与您声称的问题不匹配。@abarnert我更改了它以说明我的问题
for x, y in zip(xlist, ylist):
    pyautogui.moveTo(x, y)