為什麼這篇python script教學鄉民發文收入到精華區:因為在python script教學這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者Holocaust123 (奔跑的蝸牛)看板Python標題[教學] 把 Python 程式碼嵌...
rem = """
@echo off
rem -------------------- DOS section --------------------
rem You could set PYTHONPATH or TK environment variables here
python "%~f0" %*
goto exit
"""
############### Start of Python code ###############
# 把 Python 程式碼寫在這個黃色區域
############### End of Python code ###############
DosExitLabel = """
:exit
pause
exit
rem """
這個是我之前在網路上看到的
可以把 Python 程式碼寫在 Windows 的 .bat 檔中
把 .bat 改成 .py 也照樣可以執行
(也就是反過來把 DOS batch 嵌入 Python 中)
我覺得還蠻有用的
因為我平常把 .py 設定成點兩下使用 gvim 打開
要執行 .py 檔的話必須打開後按 F10 (或弄成exe執行)
而弄成 .bat 後 要執行只要點兩下就可以了
(不過這只是個人習慣不同罷了
也有人覺得在 .py 檔按右鍵 > 開啟檔案 > python 比較方便)
當然弄成 .pyc 也有同樣的效果 但這樣就看不到程式碼了
注意事項:
1. .bat檔在執行時
Windows會假設其編碼為 ANSI/OEM encoding (以 zh-tw 的 locale 來說就是 big5)
若你的 .bat 存成 ANSI/OEM encoding 之外的 encoding
其 code point 表示的 character 可能會無法正常顯示
甚至會產生執行錯誤
我的建議是不要使用 Non-ASCII character
就算把 Non-ASCII character 寫在 Python script 區域
也會因為沒有宣告文件編碼而出現 syntax error
(我不知道怎麼把 Python script 嵌入 .bat 時同時宣告文件編碼)
2. 承上
若你的 .bat 檔用的是 Unicode encoding (ex: UTF-8)
要注意有無 BOM
另外我依樣畫葫蘆 弄了一個把 AutoHotKey 嵌入 .bat 檔的腳本
有興趣的人可以參考 #1Dc67SX3 (EzHotKey)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.46
※ 編輯: Holocaust123 來自: 140.112.30.46 (04/03 20:59)