python脚本脱离python环境运行

一、简单粗暴,首先需要安装pyinstaller

pip install pyinstaller

二、安装完pyinstaller之后,就可以执行pyinstall命令了

pyinstaller -F xxx.py

比如以上命令,在相应的脚本路径下,执行,则会把xxx.py打包成一个.exe文件,无障碍的情况下,到同级目录dist下,可以查看到xxx.exe文件,那么该xxx.exe文件就可以独立运行了,记得改脚本依赖的配置文件需要与exe文件共存

三、打包过程中可能会遇到的一些问题

1、pyinstaller : AttributeError: module ‘enum’ has no attribute ‘IntFlag’

class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
#本来应该是直接更新pip install -U tensorflow #但是我为了彻底除去enum,所以我是先卸载,再安装具体如下

pip uninstall tensorflow

pip install tensorflow

2、若有其它再补充

 

### 如何在Linux系统中运行Python脚本 #### 方法一:直接使用`python`命令执行 可以直接通过 `python` 命令来运行 Python 脚本。如果不确定当前环境中 `python` 的位置,可以通过 `which python` 来查找其绝对路径[^2]。 ```bash $ which python /usr/bin/python ``` 接着利用查找到的解释器路径或者默认的 `python` 或者更具体的版本号(比如 `python3`),加上要执行的脚本名称即可: ```bash $ python /path/to/your_script.py ``` #### 方法二:设置Shebang并赋予可执行权限 可以在脚本的第一行加入 Shebang 行指明使用的 Python 解释器的位置,并给该文件增加可执行权限以便能够像其他 shell 脚本一样被执行。对于 Python 2.7 版本而言,可以这样操作: ```bash #!/usr/bin/python2.7 print("Hello, world!") ``` 保存上述内容到名为 `hello_world.py` 文件之后,为其添加可执行权限: ```bash chmod +x hello_world.py ``` 现在可以从终端直接调用此脚本来执行它: ```bash ./hello_world.py ``` #### 方法三:使用虚拟环境管理工具创建特定版本的Python环境 为了更好地管理和隔离不同项目的依赖关系以及所需的 Python 版本,推荐使用 Conda 创建一个新的环境并安装所需版本的 Python 和包库[^3]。 ```bash conda create -n my_project_env python=3.8 conda activate my_project_env ``` 激活新建立好的环境后,在这个环境下编写的任何 Python 程序都会自动关联至所设定的那个 Python 版本及其对应的库集合。 #### 后台运行Python程序 为了让长时间运行的任务不影响用户的交互体验,还可以考虑将其放到后台去跑。这通常涉及到两个方面的工作——让进程脱离控制终端继续工作;重定向标准输入输出流以防日志丢失等问题发生。这里给出一个简单的例子说明怎样做到这一点[^1]: 假设有一个叫做 `long_running_task.py` 的 Python 应用想要让它以后台模式启动,则可以用如下指令完成部署: ```bash nohup python long_running_task.py > output.log 2>&1 & ``` 这条语句的作用在于: - 使用 `nohup` 工具使应用程序忽略挂起信号; - 将所有正常输出的信息导向到 `output.log` 文件里; - 把错误信息也追加进同一个日志文档(`2>&1`); - 加上最后面那个单独的 `&` 符号表示把整个作业放入后台处理队列当中。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值