我有一个启动python脚本的Apple脚本。 python脚本计算一个整数。 是否可以将结果作为整数或字符串返回到applescript?
THX
答案 0 :(得分:1)
你应该能够从像这样的AppleScript中运行的python脚本中返回一个值:
set scriptResult to do shell script ("python path/to/script.py")
然后将scriptResult设置为python脚本中提供给stdout的任何输出(例如,来自print语句)。所以在你的python脚本中你可以简单地说:
print yourInteger
然后将scriptResult设置为[integer]。请注意,scriptResult将设置为所有stdout,因此您打印的所有内容都将包含在此处。您还可能需要在AppleScript中进行一些转换,以使scriptResult成为一个数字:
set scriptResult to (do shell script ("python path/to/script.py")) as integer
答案 1 :(得分:0)
在同一类型中使用do shell脚本直接使用脚本python
set xy to do shell script "echo 'import sys, time; from Quartz.CoreGraphics import *
def mouseEvent(type, posx, posy): theEvent = CGEventCreateMouseEvent(None, type, (posx,posy), kCGMouseButtonLeft); CGEventPost(kCGHIDEventTap, theEvent);
def mouseclickdn(posx,posy): mouseEvent(kCGEventLeftMouseDown, posx,posy);
def mouseclickup(posx,posy): mouseEvent(kCGEventLeftMouseUp, posx,posy);
ourEvent = CGEventCreate(None); currentpos = CGEventGetLocation(ourEvent); print currentpos[0]; print currentpos[1]; mouseclickdn(currentpos.x, currentpos.y);
mouseclickup(currentpos.x, currentpos.y);' | python "
set xy to do shell script "echo " & xy