使用 python 在 excel 中为没有 python 的用户创建应用程序
create an application in excel using python for a user without python
我正在使用 Excel 编写应用程序,我想使用 python 语言。我见过一个非常酷的库,叫做 xlwings,但是 运行 用户需要安装 python。
是否可以准备这种无需 Python 即可从 PC 启动的应用程序?
欢迎提出任何建议!
没有。您必须安装 python 并解释 python 函数等
可以使用xlloop。这是一种定制的客户端-服务器方法,其中客户端是必须安装在客户端机器上的 excel .xll。
服务器可以用多种语言编写,包括 python,当然它必须在安装了 python 的服务器上启动。目前 .xll 仅适用于 32 位。
一个小的解决方法是使用 cx_freeze 或 pyinstaller 打包您的应用程序。然后它可以在一台机器上 运行 而无需安装 python。缺点当然是程序体积有点大。
这可能不是您要查找的内容(即 - "without python"),但您可以将其作为 virtualenv .zip 文件夹发送,其中包含所有必要的软件包和相应的 python 安装包含在文件夹中...并且还在文件夹中包含一个 run.command bash 可执行文件,用户可以单击该文件以 运行 您的程序。您必须告诉用户(在 README.txt 或其他内容中)如何启用可执行文件...对于特定的应用程序,我的看起来像...
Please complete the following steps after installation of MyApplication.zip:
Step 1: Move the MyApplication folder to your Desktop.
Step 2: Open your Terminal in Go then Applications then Utilities.
Step 3: In the Terminal, paste cd ~/Desktop/MyApplication
then press Enter.
Step 4: Then, paste chmod +x run.command
then press Enter.
From now on, clicking the “run” file in MyApplication will run the application.
If clicking the “run” file still doesn’t work, then do…
Click Ok on the popup then Open System Preferences then Security & Privacy
then Click on Open Anyway button then Click Open button on the popup.
NOTE: Please do not move or delete the MyApplication folder, or any of its files.
然后我的 run.command 可执行文件如下所示:
cd ~/Desktop/MyApplication
PATH=$PATH:$HOME/Desktop/MyApplication/lib/python2.7/site-packages:$HOME/Desktop/MyApplication/lib/python2.7/site-packages/aeosa:$HOME/Desktop/MyApplication/lib/python2.7/lib-dynload:$HOME/Desktop/MyApplication/lib/python2.7/lib-old:$HOME/Desktop/MyApplication/lib/python2.7/lib-tk:$HOME/Desktop/MyApplication/Extras/lib/python:$HOME/Desktop/MyApplication/lib/python2.7/plat-mac/lib-scriptpackages:$HOME/Desktop/MyApplication/lib/python2.7/plat-mac:$HOME/Desktop/MyApplication/lib/python2.7/plat-darwin:$HOME/Desktop/MyApplication/lib/python2.7:$HOME/Desktop/MyApplication/lib/python27.zip
source bin/activate
python main.py
这里有三件事很重要:
1) 在 run.command 中,我首先将目录更改为我为此项目创建的 virtualenv。我不想在这里变得动态,因为这只是解决方案的快速破解,所以作为 README.txt 的一部分,我只是告诉用户将他们下载的文件夹放到他们的桌面上。否则,cd 命令将无法工作。
2) 我设置客户端的 PATH 变量,用冒号分隔条目。您可以在您的计算机上使用快速检查来查看您需要的路径列表...
import sys
for path in sys.path:
print path
3) 然后我调用 source bin/activate 来激活 virtualenv。
4) 然后我执行我的 main.py 文件,它在我的 virtualenv 的顶层,连同 run.command.
5) 我只为 Mac OS X 编写了这个 bash 文件,所以我不知道它如何转换为 windows PC。我认为唯一会改变的是路径文字需要使用反斜杠而不是正斜杠,但同样,我还没有为 windows 这样做,所以我不确定。
在此处阅读有关设置 virtualenv 的更多信息:https://virtualenv.readthedocs.org/en/latest/index.html
最后,请注意,您将无法通过大多数电子邮件服务发送最终的工作 .zip 文件夹,因为它们往往会阻止人们来回发送可执行文件,因此您必须使用 Dropbox 之类的服务来发给别人。
我正在使用 Excel 编写应用程序,我想使用 python 语言。我见过一个非常酷的库,叫做 xlwings,但是 运行 用户需要安装 python。
是否可以准备这种无需 Python 即可从 PC 启动的应用程序?
欢迎提出任何建议!
没有。您必须安装 python 并解释 python 函数等
可以使用xlloop。这是一种定制的客户端-服务器方法,其中客户端是必须安装在客户端机器上的 excel .xll。 服务器可以用多种语言编写,包括 python,当然它必须在安装了 python 的服务器上启动。目前 .xll 仅适用于 32 位。
一个小的解决方法是使用 cx_freeze 或 pyinstaller 打包您的应用程序。然后它可以在一台机器上 运行 而无需安装 python。缺点当然是程序体积有点大。
这可能不是您要查找的内容(即 - "without python"),但您可以将其作为 virtualenv .zip 文件夹发送,其中包含所有必要的软件包和相应的 python 安装包含在文件夹中...并且还在文件夹中包含一个 run.command bash 可执行文件,用户可以单击该文件以 运行 您的程序。您必须告诉用户(在 README.txt 或其他内容中)如何启用可执行文件...对于特定的应用程序,我的看起来像...
Please complete the following steps after installation of MyApplication.zip: Step 1: Move the MyApplication folder to your Desktop. Step 2: Open your Terminal in Go then Applications then Utilities. Step 3: In the Terminal, paste cd ~/Desktop/MyApplication then press Enter. Step 4: Then, paste chmod +x run.command then press Enter. From now on, clicking the “run” file in MyApplication will run the application. If clicking the “run” file still doesn’t work, then do… Click Ok on the popup then Open System Preferences then Security & Privacy then Click on Open Anyway button then Click Open button on the popup. NOTE: Please do not move or delete the MyApplication folder, or any of its files.
然后我的 run.command 可执行文件如下所示:
cd ~/Desktop/MyApplication
PATH=$PATH:$HOME/Desktop/MyApplication/lib/python2.7/site-packages:$HOME/Desktop/MyApplication/lib/python2.7/site-packages/aeosa:$HOME/Desktop/MyApplication/lib/python2.7/lib-dynload:$HOME/Desktop/MyApplication/lib/python2.7/lib-old:$HOME/Desktop/MyApplication/lib/python2.7/lib-tk:$HOME/Desktop/MyApplication/Extras/lib/python:$HOME/Desktop/MyApplication/lib/python2.7/plat-mac/lib-scriptpackages:$HOME/Desktop/MyApplication/lib/python2.7/plat-mac:$HOME/Desktop/MyApplication/lib/python2.7/plat-darwin:$HOME/Desktop/MyApplication/lib/python2.7:$HOME/Desktop/MyApplication/lib/python27.zip
source bin/activate
python main.py
这里有三件事很重要:
1) 在 run.command 中,我首先将目录更改为我为此项目创建的 virtualenv。我不想在这里变得动态,因为这只是解决方案的快速破解,所以作为 README.txt 的一部分,我只是告诉用户将他们下载的文件夹放到他们的桌面上。否则,cd 命令将无法工作。
2) 我设置客户端的 PATH 变量,用冒号分隔条目。您可以在您的计算机上使用快速检查来查看您需要的路径列表...
import sys
for path in sys.path:
print path
3) 然后我调用 source bin/activate 来激活 virtualenv。
4) 然后我执行我的 main.py 文件,它在我的 virtualenv 的顶层,连同 run.command.
5) 我只为 Mac OS X 编写了这个 bash 文件,所以我不知道它如何转换为 windows PC。我认为唯一会改变的是路径文字需要使用反斜杠而不是正斜杠,但同样,我还没有为 windows 这样做,所以我不确定。
在此处阅读有关设置 virtualenv 的更多信息:https://virtualenv.readthedocs.org/en/latest/index.html
最后,请注意,您将无法通过大多数电子邮件服务发送最终的工作 .zip 文件夹,因为它们往往会阻止人们来回发送可执行文件,因此您必须使用 Dropbox 之类的服务来发给别人。