python整理

 

赋值:指向同一个对象

浅拷贝:b = a.copy()或者import copy    b = copy.copy(a)      a,b指向不同对象,但是子对象指向同一对象

ex:      

a = [1, 2, 3, 4, ['a', 'b']]
b = a.copy()
a.append(5)
print("b",b)
a[4].append("c")
print("b",b)

还可以分别打印id(a),id(b),id(a[4]),id[b[4]]查看对象和子对象的内存地址,可以发现a,b的地址不一样,但是a[4],b[4]的地址相同。

深拷贝:父对象和子对象都指向不同对象。

 

__slots__:__slots__变量定义的属性仅对当前类实例起作用,对继承的子类是不起作用的

闭包: 在子函数中想修改主函数的变量时,需使用nonlocal关键字。nonlocal表示这个变量不是局部变量空间的变量,需要向上一层变量空间找这个变量。若主函数的变量是可变数据类型,可以在子函数直接修改。并且每次调用内函数都在使用同一份闭包变量。


def outer(x):
    def inner(y):
        nonlocal x
        x+=y
        return x
    return inner

a = outer(10)
print(a(1)) #11
print(a(3)) #14

 

 

 

 

 

 

### 整理和管理 Mac 上的 Python 环境 #### 删除已安装的 Python 版本 对于不再使用的特定版本的 Python,可以通过以下命令彻底移除: 通过终端执行如下指令来删除应用程序中的 Python 3.x 安装包: ```bash sudo rm -rf "/Applications/Python 3.x" ``` 接着,移除位于框架目录下的对应版本: ```bash sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.x ``` 最后,清理 `/usr/local/bin` 中指向该版本的所有软链接。这一步骤可以防止残留的路径干扰新版本的正常工作: ```bash cd /usr/local/bin/ ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/3.x' | awk '{print $9}' | tr -d @ | sudo xargs rm ``` 以上操作会完全清除指定版本的 Python 及其关联组件[^2]。 #### 设置新的 Python 环境变量 当重新安装或切换到不同版本时,可能需要更新系统的 PATH 环境变量以便正确调用所需的解释器。编辑 `~/.zshrc` 或者 `~/.bash_profile` 文件,在其中加入最新的 Python 路径。例如,如果最新版被放置于 `/Users/user_name/Library/Python/3.x/bin` ,则添加如下行至配置文件末尾: ```bash export PATH="/Users/user_name/Library/Python/3.x/bin:$PATH" ``` 保存更改后运行 source 命令使修改生效: ```bash source ~/.zshrc # 如果使用的是 zsh 终端 # 或者 source ~/.bash_profile # 如果使用的是 bash 终端 ``` 验证当前默认使用的 Python 解释器及其版本号: ```bash python3 --version which python3 ``` 这些方法可以帮助保持开发环境中 Python 版本的一致性和整洁度[^1]。 #### 使用虚拟环境隔离项目依赖关系 为了更好地管理和维护各个项目的独立性以及避免全局库冲突,建议创建专门针对单个项目的工作空间——即所谓的“虚拟环境”。借助工具如 venv 模块可轻松实现这一点: ```bash python3 -m venv my_project_env source my_project_env/bin/activate pip install requests numpy pandas ... deactivate ``` 每次启动新项目前激活相应的虚拟环境,并在此基础上安装必要的第三方模块;完成任务之后记得停用它以恢复常规状态[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值