½«PythonºÍAutoHotkey½áºÏÆðÀ´
http://www.autohotkey.com/forum/topic53773.html
Q:I am searching for is a way to execute AHK commands from a Python script. Is this possible?
A:Yes. Here is an example.
tested with python2.6, requires AutoHotkey.dll in the working directory or path...
ahkpython.py:
#Persistent
dllcall(A_ScriptParams, "int", 42, "cdecl int")
return
f1::
inputbox, x, enter a numerical parameter for python callback
result := dllcall(A_ScriptParams, "int", x, "cdecl int")
return
ahkpython.ahk
from ctypes import *
ahk = cdll.AutoHotkey
pyclient = create_string_buffer("ahkpython.ahk") # no unicode in ahk
CMPFUNC = CFUNCTYPE(c_int, c_int)
def py_cmp_func(a):
print "ahk: " , a
return a
cmp_func = CMPFUNC(py_cmp_func)
fx = create_string_buffer(str(cast(cmp_func, c_void_p).value))
script = create_string_buffer("""
fx2(msg){
WinActivate %msg%
msgbox in function fx2 with %msg% from python
return "success"
}
""")
ahk.ahkdll(pyclient, "", fx)
ahk.ahkassign(create_string_buffer("fx"), fx)
ahk.addScript(script)
ahk.ahkFunction(create_string_buffer("fx2"), create_string_buffer("Untitled"))
remarks:
create_string_buffer is required because autohotkey.dll exported functions do not work with unicode.
See HotkeyIt's excellent chm help file for documentation on the functions.
Ïà¹ØÎĵµ£º
²Î¿¼Á´½Ó£ºhttp://www.woodpecker.org.cn/diveintopython/functional_programming/dynamic_import.html
Ò» ¶¯Ì¬µ¼ÈëÄ£¿é
PythonµÄimport²»ÄܽÓÊܱäÁ¿£¬ËùÒÔÓ¦¸ÃÓà __import__º¯ÊýÀ´¶¯Ì¬µ¼Èë¡£
ÈçϵĴúÂëÎÞ·¨Õý³£µ¼ÈëÄ£¿é
modules = ['OpenSSL', 'Crypto', 'MySQLdb', 'sqlite3', 'zope.interface', 'pyasn1', 'twisted ......
Ö»ÐèÒªÔÚÎļþÖÐimportÓëÄãдµÄÎļþµÄÎļþÃûÒ»ÖµÄÄ£¿éÃû¼´¿É£¬Õâʱpython»áΪÄã´´½¨Ò»¸öpycÎļþµÄ¡£
¼´£¬Èç¹ûÄãÒѾдÁËÒ»¸öÃûΪssss.pyµÄÎļþ£¬¶øÏÖÔÚÄãÐèÒªÔÚÃûΪaaaa.pyµÄÎļþÖÐʹÓÃssss.pyÖж¨ÒåµÄ·½·¨£¬ÄÇôÄãÖ»ÐèÒªÔÚaaaa.pyÖмÓÈëimport ssss£¬È»ºóÄã¾Í¿ÉÒÔÔÚaaaa.pyÖÐʹÓÃssss.pyÖеķ½·¨£¨µ±È»·½·¨Ç°ÐèÒª¼ÓÄ£¿éÃû ......
1.PythonÖÐʱ¼äº¯ÊýÓм¸ÖÖ²»Í¬µÄ±íʾ·½·¨¡£Ò»ÖÖÊÇ»ùÓÚÊý×ֵıíʾ·½·¨£¬ÁíÍâÒ»ÖÖÊÇÓÃһϵÁÐÖµÀ´±íʾ£¬µÚÈýÖÖÊÇÓÃASCIIÂë×Ö·û´®µÄ¿É¶ÁÐÎʽÀ´±íʾµÄÔª×é¡£ time()º¯Êý·µ»ØµÄÊÇ´Óijһʱ¼äµãËãÆðµÄÃëÊý£¬¸ÃÊýÖµÊÇÒ»¸ö¸¡µãÊý¡£¸ù¾Ý²Ù×÷ϵͳµÄ²»Í¬£¬Õâ¸öʱ¼äµãÒ²²»Í¬¡£Í¨¹ýÇólocaltime(0)µÄÖµ¿ÉÒÔÕÒµ½ÏµÍ³µÄ¸Ãʱ¼äµã¡£ localtime ......
Python Import»úÖÆ±¸Íü(ת)
×î½üÔÚ¿´¡¶PythonÔ´ÂëÆÊÎö¡·£¬¶ÔPythonÄÚ²¿ÔËÐлúÖÆ±ÈÒÔǰÁ˽âµÄ¸üÉîÈëÁË£¬¸Ð¾õ×Ô¼ºÓлú»áÒ²¿ÉÒÔ×ö¸öСÐ͵Ķ¯Ì¬½Å±¾ÓïÑÔÁË£¬ºÇºÇ£¬µ±È»
ÊÇ´µÅ£ÁË¡£Ä¿µÄµ±È»²»ÊÇ´´ÔìÒ»¸ö¶¯Ì¬ÓïÑÔ£¬Ä¿µÄÖ»ÓÐÒ»¸ö£º¸üºÃµÄʹÓÃPython¡£¿´µ½Ä£¿éµ¼ÈëÄÇ¿éµÄʱºò£¬ÖÕÓÚ¶ÔÄ£¿éµ¼Èë»úÖÆ±È½ÏÁ˽âÁË£¬ÒÔ·ÀÍ ......
http://bbs.chinaunix.net/thread-1586782-1-1.html
ÎÒ¸Õ¸ÕÓÃpythonдÁËÒ»¶Î²Ù×÷excelµÄ½Å±¾£¬Ä¿µÄÊǰÑÒ»¸öexcelÎļþ°´ÕÕijһÁÐÖеÄ×ֶβð·Ö³É¶à¸öÎļþ£¬ÀýÈç°´ÕÕ³ÇÊлòÕßÊ¡·ÝµÈ£¬µ«ÊÇ·¢ÏÖ´¦ÀíÒ»¸ö1700ÐеÄÎļþ²ð·Ö³É40¶à¸öÎļþʱҪÔËÐÐ30·ÖÖÓ×óÓÒ£¬ÐÔÄÜÌ«Âý£¬Çë¸ßÊÖ°ïæ¿´¿´Ôõô²ÅÄÜÓÅ»¯ÐÔÄÜ£¬Ð»Ð»¡£
ÐÂÊÖдµÄ½Å±¾£¬Çë²» ......