mac电脑中设置python3为python运行程序

文章讲述了在MacOS系统中,由于默认shell是zsh,导致无法按照视频教程设置python别名。通过执行chsh命令切换到bashshell,然后修改.bash_profile添加alias,使得python命令能够执行python3,成功解决了问题。

最近几天心血来潮想学习一下python,安装时倒是很顺利,直接在终端中输入python3,能够正常执行。如果想要使用python命令,而非python3命令运行python程序,需要执行以下命令。

echo 'alias python=python3' >> .bash_profile

可是按照视频教程里所讲执行这个命令时,终端报错,不能运行。

于是从网上找办法,原来是MacOS默认的SHELL连接软件是zsh,需要执行chsh命令,把zsh更改为bash。具体操作如下:
1.查看mac默认的SHELL连接文件

 echo $SHELL

显示为:
/bin/zsh

2.查看mac自带的SHELL连接文件,如图所示,有7个。

 more  /etc/shells

在这里插入图片描述
3. 使用chsh命令更改系统的SHELL连接文件为bash

chsh -s /bin/bash

4.执行下面的命令,设置别名python=python3。

echo 'alias python=python3' >> .bash_profile

5.运行python,显示如下图所示的界面,问题解决。

python

在这里插入图片描述

<think>好的,用户想让Python程序在合上笔记本盖子后继续运行。我需要根据提供的引用信息来找到解决方案。 首先,引用[1]提到关闭盖子默认会让电脑进入睡眠或休眠状态,这会导致所有程序暂停,包括Python脚本。所以第一步应该是调整电源设置,让合盖时不进入睡眠。在Windows中,可以通过控制面板的电源选项,将“关闭盖子时”设置为“不采取任何操作”。对于Linux,可能需要修改systemd的logind.conf文件,设置HandleLidSwitch=ignore。Mac则可能需要终端命令禁用睡眠模式。 然后,引用[3]提到了离开模式(Away Mode),这是一种让电脑在看似关闭的情况下继续运行任务的功能。用户可能需要通过修改注册表来启用离开模式,这样合盖时系统不会完全睡眠,而是进入低功耗状态,保持程序运行。不过,这个设置可能对硬件有损耗,需要注意。 另外,用户可能需要防止系统休眠,可以通过Python脚本定期发送信号,比如在Windows下调用SetThreadExecutionState API,或者使用第三方库如wakeonlan保持唤醒状态。Linux下可以用caffeinate工具,或者使用systemd服务确保程序持续运行。 还要考虑后台运行Python程序,比如使用nohup或screen命令,避免终端关闭时进程被终止。同时,测试设置是否有效,合上盖子后观察程序是否继续执行,可能需要外接显示器或SSH连接来验证。 需要综合这些步骤,确保用户能够正确配置电源选项、处理可能的系统休眠,并保持Python进程活跃。同时提醒用户注意硬件散热和电池消耗的问题,避免长期合盖运行导致过热。</think>### 解决方案:设置笔记本电脑合盖后保持Python程序运行 #### 一、修改系统电源设置(核心步骤) 1. **Windows系统** - 打开`控制面板 > 电源选项 > 选择关闭盖子的功能` - 将`关闭盖子时`设置为**不采取任何操作**(需对电池和电源都设置)[^1][^3] - 若需进一步防止休眠,在命令提示符执行: ```bash powercfg /hibernate off ``` 2. **Linux系统(如Ubuntu)** - 编辑配置文件: ```bash sudo nano /etc/systemd/logind.conf ``` - 修改以下参数并重启服务: ``` HandleLidSwitch=ignore HandleLidSwitchExternalPower=ignore ``` ```bash sudo systemctl restart systemd-logind ``` 3. **macOS系统** - 终端执行命令禁用睡眠: ```bash sudo pmset -a disablesleep 1 ``` - **注意**:此操作可能显著增加耗电量,需谨慎使用。 #### 二、防止系统休眠的Python代码增强 通过程序主动阻止系统休眠(需管理员权限): 1. **Windows API调用** ```python import ctypes ES_CONTINUOUS = 0x80000000 ES_SYSTEM_REQUIRED = 0x00000001 ctypes.windll.kernel32.SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED) ``` 2. **Linux保持唤醒状态** ```python import subprocess subprocess.run(["systemctl", "mask", "sleep.target", "suspend.target"]) ``` #### 三、后台运行保障 1. **使用`nohup`(Linux/macOS)** ```bash nohup python your_script.py & ``` 2. **通过`screen`会话保持** ```bash screen -S python_task python your_script.py # 按Ctrl+A D 脱离会话 ``` #### 四、验证设置有效性 - 合盖后通过SSH连接或外接显示器观察程序输出 - 使用`ping`命令测试网络连通性 - 检查系统日志: **Windows**: `事件查看器 > Windows日志 > 系统` **Linux**: `journalctl -u systemd-logind` #### 注意事项 1. 长期合盖运行可能导致散热问题,建议外接散热底座 2. 电池供电模式下可能触发低电量保护机制 3. 企业版Windows可能需要组策略调整
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值