python删除指定内容
作者:东流去
购买理由
奶爸玩Home Assistant用的硬件是台M1的mac,软件配置是这个样子的:
Home-brew 4.0.3 里面装了python3.10,在python虚拟环境里跑的Home Assistant Core
本来的配置home-brew3+python3.9+home assistant core2023.1.7
这篇就是升级到home-brew4+python3.10+homeassistant core 2023.2.0的纯干货
升级python倒3.10 的原因很简单,python3.9的官方支持只能到Home Assistant 2023.1.7,更新的版本需要python3.10,好吧,本来不想折腾,但实在是没有办法,只好硬着头皮升级,中间走了很多弯路,写出来希望后来者会更轻松一些。
Mac os 自带有phthon3.9,但是一般老程序员都会建议,重新在Home-brew里部署一个独立的Python,毕竟重装Home-brew比重装macos系统容易多了,一旦出了问题删除Home-brew,就可以轻易推到重来。
Home-brew这个包管理器,也更加干净整洁,方便管理。
第一步:Home-brew4的部署
没有什么难度,本质上就是换源,提高访问的速度。搜索“Homebrew 源使用帮助”,参考清华源或者中科大源帮助文档就可以。
关键点就是在配置文件里,加上这几行代码,我的文件是在这个位置 /.zshrc (等同于 /users/用户名/.zshrc)
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles"
export HOMEBREW_API_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles/api
eval $(/opt/homebrew/bin/brew shellenv)
解释一下,添加API这一行是因为Home-brew更新了api这一访问方式,这一点与home-brew3不同。
然后,homebrew update
homebrew upgrade
homebrew upgrade
一切正常后,转到下一步
第二步,安装python3.10
brew里的python是没有升级到3.10这个概念的,各个版本的python都可以共存,通过创建不同的虚拟环境解决共存问题。
brew install [email protected] #安装时指定特定版本
关键点在这里,奶爸假设你的设备已经在3.9的环境下正常运行了Home assistant 2023.1.7,下来只要创建虚拟环境,在环境里再安装一遍更新版本的home assistant,就可以实现home assistant的平滑无感升级。
mkdir ~/Homeassistant #创建虚拟环境文件所在文件夹,位置自选
cd ~/Homeassistant
python3 -m venv .
source bin/activate
看到这个就成功了,说明了这是python是运行在homeassistant这个环境里。
(Homeassistant) chenwenli@Mini homeassistant %
第三步,安装home assistant
python3.10 -m pip install wheel
如果提示需要升级 pip 或其他报错运行下方指令
python3.10 -m pip install --upgrade pip
pip3 install homeassistant==2023.2.0 #这是python3.9不支持的版本,能安装说明成功了。
pip3 install --upgrade homeassistant #升级到最新的版本
hass
能启动就成功了,home assistant 顺利从3.9过渡到3.10,无痛的那种,不需要任何的设置。
hass --script macos install
开机自启动 home assistant
以后升级到python3.11,同样的方法想必也会有用,现在可别升级,不支持的。
外观展示
ios16 家庭外观大改了,不难看
\n
使用感受
升级后能感知的明显变化是,美的的热水器可以在Homekit里调节温度了。
继小米全家桶之后,美的的设备也可以很容易接入Homekit,实现iphone的控制,在这里感谢大佬georgezhao2010的插件,搜索midea_ac_lan就能找到。
效果不错
\n
总结
技术的更新从来没有停下来脚步,在matters协议一统之前,homeassistant还是最佳的解决方案。
将来的技术肯定跟好,但当下的技术才是奶爸的最爱。
每个人的软硬件情况不一,有问题可以随时留言提问。
祝人人都可以愉快的玩耍。
\n
潘往贷2434Python如何删除文本文件的某一段 -
史果券14743085524 ______ 循环使用replace删除
潘往贷2434如何用python删除一个文件 -
史果券14743085524 ______ os.remove('文件') 直接从系统里面删除文件,不经过回收站. os.rmdir('文件夹') 直接从系统里面删除空文件夹,不经过回收站. shutil.rmtree('文件夹') 直接从系统里面删除文件夹(文件夹里面可以有别的文件),不经过回收站.所以要小心不要误删. 可使用第三方包,send2trash send2trash.send2trash() 可以删除任何东西,删除的东西送回回收站.
潘往贷2434python3怎么删除列表里指定的字典呢? -
史果券14743085524 ______ i = list(filter(lambda x: x['name'] != 'wang', i))
潘往贷2434python怎么删除文件夹以及里面的所有文件 -
史果券14743085524 ______ 可以调用os 模块 例如 import os os.remove()——删除指定文件 os.rmdir()——删除指定目录 os.system()-----执行系统命令 例如 os.system("rm test.txt") 注意,由于对文件进行操作, 请注意,执行python脚本的权限. 否则可能执行失败
潘往贷243445,如何使用python删除一个文件 -
史果券14743085524 ______ import os# 列出目录 print ("目录为: %s" % os.listdir(os.getcwd()))# 移除 os.remove("aa.txt")# 移除后列出目录 print ("移除后 : %s" % os.listdir(os.getcwd()))
潘往贷2434如何删除一个list中最后一个元素 -
史果券14743085524 ______ 1、python删除列表中指定元素的方法. 2、代码实例,创建一个列表. 3、打印定义的列表,使用print(). 4、删除列表中的指定元素,使用remove(). 5、再次打印删除元素后的列表. 6、列表的remove()方法其他注意事项.
潘往贷2434Python中如何删除一个文件 -
史果券14743085524 ______ file = 'c:/test.txt' if os.path.exists(file): os.remove(file) else: print 'no such file:%s' % file
潘往贷2434python如何删除字符串中指定位置的字符 -
史果券14743085524 ______ 不用转list.python可以很方便地操作字符串.s = s[:3] + s[4:]...
潘往贷2434如何用python删除特定文件夹 -
史果券14743085524 ______ #!/usr/bin/env python import os import shutil delList = [] delDir = "/home/test" delList = os.listdir(delDir ) for f in delList: filePath = os.path.join( delDir, f ) if os.path.isfile(filePath): os.remove(filePath) print filePath + " was removed!" elif os.path.isdir...
潘往贷2434Python删除指定目录下指定文件的实现 -
史果券14743085524 ______ import os>>> os.remove('文件目录文件名') 比如删除d盘中一个ser.txt文件:import os os.remove('D:\ser.txt')