有没有比这个 powershell 脚本更好的方法来帮助没有经验的用户安装本地 python 轮子?

问题描述

我正在向缺乏经验的用户分发一些 Python 代码,这些用户对任何涉及命令行的事情都感到胆怯。他们可以安装 Anaconda 并打开 Jupyter notebook,但除此之外他们从未与 Python 交互过。

所以我在谷歌上搜索一个更简单的界面(可能是 GUI),让这样的用户能够安装本地 Python 包或 Python 轮子。我偶然发现了看起来很有前途的 pip-gui (https://github.com/GDGVIT/pip-gui),但它目前还没有安装本地包,当然需要自己安装。

所以对于 Windows 用户,至少我遇到了以下解决方案(基于我在网上找到的一个脚本,我已经记不清了)。它是一个 powershell 脚本,它使用 Windows 表单让用户选择一个“.whl”文件,然后使用 pip 安装它。它假设用户认目录中安装了 anaconda(可能需要一些灵活性)。

我必须将其作为“.txt”分发并要求用户重命名为“.ps1”,然后右键单击并使用 powershell 运行。这有点麻烦,但用户似乎可以这样做,即使他们不习惯在 cmd shell 中使用“cd”和“pip”。

这是我得到的最好的解决方案,我想知道是否有一些简单的东西被我忽略了。

Add-Type -AssemblyName System.Windows.Forms
$f = new-object Windows.Forms.OpenFileDialog
$f.InitialDirectory = pwd
$f.Filter = "Python Wheel Files (*.whl)|*.whl"
$f.ShowHelp = $true
$f.Multiselect = $false
[void]$f.ShowDialog()

(& ($($Env:HOMEDRIVE)+$($Env:HOMEPATH)+"\anaconda3\Scripts\conda.exe") "shell.powershell" "hook") | Out-String | Invoke-Expression

pip install $f.FileName

Read-Host -Prompt "Press any key to continue"

解决方法

如果是 Windows,您可以将 pip 命令保存在 .cmd 文件中,单击该文件后将自动打开命令提示符窗口并运行 pip install 命令。

例如,将 pip install & pause 保存在桌面上名为 setup.cmd 的文件中,然后双击它。

enter image description here

enter image description here

enter image description here

pip install & 暂停

暂停会让你有机会在用户退出命令提示符窗口之前询问用户按键。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...