首页 >>  正文

python怎么导包

来源:baiyundou.net   日期:2024-09-27

作者:东流去

购买理由

奶爸玩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    

","force_purephv":"0","gnid":"9c8ec6d38c1c935fa","img_data":[{"flag":2,"img":[{"desc":"","height":"250","title":"","url":"https://p0.ssl.img.360kuai.com/t0185ee8fd2e86034ca.jpg","width":"600"},{"desc":"","height":"1299","title":"","url":"https://p0.ssl.img.360kuai.com/t01c651ff84a55af77b.jpg","width":"600"},{"desc":"","height":"1299","title":"","url":"https://p0.ssl.img.360kuai.com/t01c911346f9f9664c3.jpg","width":"600"}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"hbase","pub_time":1677564517000,"pure":"","rawurl":"http://zm.news.so.com/550b2eda81f1718a7ece08bfefd81394","redirect":0,"rptid":"05d7d55477d171db","rss_ext":[],"s":"t","src":"什么值得买","tag":[{"clk":"ktechnology_1:mac","k":"mac","u":""}],"title":"Mac OS升级安装Python3.10继续玩Homeassistant

童肢亚3174python 能导出整体的包吗 -
文筠柳19448944113 ______ 可以的,直接去安装目录下把包对应的代码拷贝出来就可以了.

童肢亚3174python 如何根据不同的环境配置导入不同的包 -
文筠柳19448944113 ______ 比如配置文件里配了环境变量名 EVN = 'dev'EVN = 'pro'if EVN = 'dev':import aelif EVN = 'pro':import b#字符串包 module = __import__('datetime') print module.datetime.now()

童肢亚3174如何导入其他位置的python模块 -
文筠柳19448944113 ______ import sys print sys.path 上面的代码会给出所有可用的python路径,你把.py文件放到这些路径下面就可以在其他文件里导入它了.另外一个特殊的路径就是当前路径,比如你在一个文件夹test下新建两个.py文件,分别为123.py 和456.py ,那么你...

童肢亚3174python怎么导入csv文件 -
文筠柳19448944113 ______ python中有一个读写csv文件的包,直接import csv即可.利用这个python包可以很方便对csv文件进行操作,一些简单的用法如下. 读文件 csv_reader = csv.reader(open('data.file', encoding='utf-8')) for row in csv_reader: print(row)

童肢亚3174python 导入全部模块 -
文筠柳19448944113 ______ 通常的办法是,你将所有的模块都放到系统的lib目录里.或者是放到sys的path变量里. 然后就可以import了.你可以设置一个容器.在容器里,将所有需要的模块都import完成.如果不知道哪些模块,可以使用OS的WALK来遍历. 把你的用户代码跑在容器里.这样就不需要import所有的模块了. 容器可以是自己写的一个解释器,比如象是ipython这样子.也可以是一个WEB界面, 或者是一个服务,一个可以调用插件的运行模块.容器也可以是一个代码框架.

童肢亚3174如何用pip安装模块
文筠柳19448944113 ______ win+r cmd 命令指示符下输入:你用python3.x就是 pip3 install 你要安装的库名 用python2.x pip3 install 你要安装的库名

童肢亚3174python 程序怎么打包发布 -
文筠柳19448944113 ______ 发布自己的python包1. 首先先去PyPI注册帐号2. 配置~/.pypirc如下:[distutils] index-servers = pypi pypitest [pypi] username:ShaoZhengjiang password:mypassword [pypitest] username:ShaoZhengjiang password:mypassword3. 然后注册并上传自...

童肢亚3174请教大家是怎么管理 python 包的 -
文筠柳19448944113 ______ 第1步,创建一个新的,空的module对象(它可能包含多个module);第2步,把这个module对象插入sys.module中 第3步,装载module的代码(如果需要,首先必须编译) 第4步,执行新的module中对应的代码.就是说在导入一个包时,python首先去这个包下加载__init__.py.根据这个__init__.py里面规定的导入情况,再去导入其他模块.

童肢亚3174python k近邻使用哪个包 -
文筠柳19448944113 ______ 两个比较好用的工具:PyInstaller和py2exe.其中py2exe应用在windows下,而PyInstall则可应用windows、Linux以及Mac OS X上.

童肢亚3174python3没有的模块怎么手动导入模块 -
文筠柳19448944113 ______ >>>import sys>>>sys.path.append('E:\python 3.4\')>>>import fibo 以上就是代码,你可以试试在交互模式下一行一行的输入.

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024