[英]declare multiple variables to same value
使用Python 3.3.3和pywin32 API。
我是python的新手,正在尝试简化我的脚本。 我正在尝试为多个变量分配一个值,但是它说
扩充分配的非法表达
import win32api
import win32con
import time
#makes sure your computer doesnt lock when idle for too long...
def move(x, y):
for i in range(10):
win32api.SetCursorPos((x,y))
if(i % 1 == 0): x, y += 10 #this is where it crashes
if(i % 2 == 0): x, y -= 10
time.sleep(5)
move(500, 500)
if(i % 1 == 0): x, y += 10 #this is where it crashes
if(i % 2 == 0): x, y -= 10
这是不可能的。 在Python中解压缩元组时,左侧的变量数必须等于 no。 在右侧的元组中。
您可以这样做:
if(i % 1 == 0): x+=10; y+=10
if(i % 2 == 0): x-=10; y-=10
无论如何,对于i%1都要小心,它将始终评估为0,因此您的第一个if始终将执行。 也许您想这样写,以改变光标移动的方向:
if(i % 2 == 1): x+=10; y+=10
if(i % 2 == 0): x-=10; y-=10
更多阅读: 如何将多个语句放在一行中?
您可以将多个简单的任务链接在一起,例如:
a = b = 5
不过,这对于+=
这样的扩充作业不起作用。 您将不得不分别编写它们。
if i % 1 == 0:
x += 10
y += 10
(此外, if
不需要括号。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.