V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
jchnxu
V2EX  ›  问与答

家人们,有没有一键安装 Python 的脚本可以使用?或者怎么把 Python 弄成绿色💚软件

  •  
  •   jchnxu · 2022-08-26 18:05:52 +08:00 · 1851 次点击
    这是一个创建于 839 天前的主题,其中的信息可能已经有所发展或是发生改变。
    (老是需要帮别人装 python3 ,就想自动化一下


    要求是:

    1. 跨平台 (win + mac + linux)
    2. 尽可能的轻量
    3. 最好是脚本之类的能通过命令行跑的,因为我想加一些功能,比如只装 python3 ,或者检测”已经装了就不装了”。


    我自己找到的:

    1. conda ,就太大了。比 python 本身还大
    2. 又比如弄成绿色版( portable ),直接能用就行?其实也能符合我的要求,但是好像也没有找到
    3. 感觉像 https://github.com/nvm-sh/nvm 这种就比较合适,但 nvm 是安装 node.js 的
    第 1 条附言  ·  2022-08-27 14:46:18 +08:00
    表达不准确,是在不同平台下分别对应一个脚本就行,不需要“跨平台”
    第 2 条附言  ·  2022-08-27 14:47:50 +08:00
    想实现的效果就类似于:

    install.sh 或者 install.bat

    if ( python3 is installed ) echo "python3 is installed"
    else run a install script
    13 条回复    2022-08-29 13:33:54 +08:00
    ByteCat
        1
    ByteCat  
       2022-08-26 20:54:26 +08:00 via iPhone   ❤️ 1
    pyinstaller 就可以,一直用来打包单文件
    ysc3839
        2
    ysc3839  
       2022-08-26 21:08:27 +08:00 via Android
    Node.js 有 nvm 这些是因为官方提供了编译好的文件,Python 官方只提供了 Windows 和 macOS 编译好的包。可以使用 pyenv ,会自动帮你编译 Python 。
    FengMubai
        3
    FengMubai  
       2022-08-26 21:40:40 +08:00   ❤️ 1
    ClericPy
        4
    ClericPy  
       2022-08-26 21:55:57 +08:00
    关注很久这方面, 几乎一年发一次帖子问...

    编译的话, nuitka 挺不错的, 只编译源码, 第三方依赖原样带过去不编译

    如果目标机器有 Python 解释器的话, 打包成 zipapp 带上依赖也行, 运行时安装依赖也行, 都是双击运行的

    上面两者结合也可以, 其实就是拿 nuitka 当个绿色版解释器. 其他的绿色版解释器, 除了一些比较野路子的, 常见的有官方的 embed 嵌入式版本, 各种缺东西, 或者 pyoxy?

    总而言之,
    ltkun
        5
    ltkun  
       2022-08-26 22:39:48 +08:00 via Android
    运行环境怎么能跨平台 架构系统都不一样 能跨平台的是 py 代码
    IDAEngine
        6
    IDAEngine  
       2022-08-26 23:32:09 +08:00
    直接压缩成 zip 包,然后打包进 py 解释器,单文件
    lanlanye
        7
    lanlanye  
       2022-08-26 23:48:29 +08:00
    macOS 不用装,Linux 一般也不用,没有的话 pyenv ,Windows 直接从商店下……
    lanlanye
        8
    lanlanye  
       2022-08-26 23:49:22 +08:00
    @lanlanye 哦理解错了,是想让脚本可以在多个平台运行是吧……那同一楼说的……
    chapiom
        9
    chapiom  
       2022-08-27 11:44:12 +08:00
    linux 和 mac 新一点的版本都自带了吧,用命令行安装也很简单啊,不是一键?
    windows 下可以用 /quiet 参数静默安装
    jchnxu
        10
    jchnxu  
    OP
       2022-08-27 14:45:51 +08:00
    @ltkun #5 嗯嗯,我表达不清楚。是在不同平台下分别对应一个就行,而不是跨平台
    jchnxu
        11
    jchnxu  
    OP
       2022-08-27 15:36:30 +08:00
    @ysc3839 #2 我好像装了 pyenv 。我先试试,感谢老哥
    ysc3839
        12
    ysc3839  
       2022-08-27 18:47:34 +08:00 via Android
    @lanlanye macOS 需要安装,系统自带的 Python 版本是 2.7 ,并且以后可能会移除。
    julyclyde
        13
    julyclyde  
       2022-08-29 13:33:54 +08:00
    @ysc3839 Mac 里面 2.7 已经没了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   992 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:48 · PVG 02:48 · LAX 10:48 · JFK 13:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.