首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2021年,你应该知道的Python打包指南

最终在候选列表中优先选择 whl 文件为待安装的包,将包下载到本地,候选包的选择可以由pip install的--only-binary和--no-binary选项控制。...现在准备安装了,如果待安装的是 whl,那就非常简单,直接解压(whl 文件是一种 zip 格式),放到目标目录即可,解压后产生的文件除了代码或二进制以外,还会包含一个my_package-0.1.0....在 PEP 517 发布之后,则由 PEP 517 的 build backend 控制。...PEP 517 的配置,这样可以让老的项目,能直接用 PEP 517 的方式构建。...pdm-pep517 所以我可以不用写 setup.py 了 setup.py作为一个元数据的定义格式是有问题的: 必须由 Python 运行,无法静态解析 由于第 1 点,有注入恶意代码的操作可行性

1.7K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PDM - 一款新的 Python 包管理器

    截止发文时,已经在PyPI上发布了0.3.0版本,它包含以下特性: PEP 582 本地项目库目录,支持安装与运行命令,完全不需要虚拟环境。...兼容 PEP 517 的构建后端,用于构建发布包(源码格式与 wheel 格式) 做一个项目,首先自己要用起来,至少对我来说,这些功能非常Exciting,而且我随时可以根据自己的喜欢做新功能(P.S....把握造轮子的程度 造轮子造轮子,造法也有很多种,你可以从零件厂采购轮毂,轮胎,自己组装,也可以从冶金、找橡胶树资源开始。 1....比如我要安装一个包,用这种方法实现出来是这个样子: PYTHON def install_requirement(requirement): # requirement是符合PEP508规范的依赖格式...这种方法对测试代码的侵入是非常小的,你甚至只需要修改PyPI的URL为https://127.0.0.1:{port}/simple就可以了。但这依然要求服务器上的文件在本地也有。

    1.4K20

    开源云真机平台Sonic(Windows端)接入iOS设备实践

    ); 如果iOS设备准备接入在Windows或Ubuntu系统的Agent上,需要安装: usbmux:这个服务主要用于在USB协议上实现多路TCP连接,将USB通信抽象为TCP通信。...所以Windows上可以通过直接安装iTunes来解决(通过爱思助手之类的应该也可以),Ubuntu需要单独安装usbmux; 连接手机打开iTunes 首次连接,在手机的提示框中选择信任设备,随后即可连接成功...2.设备连接异常 忘记当时是怎么操作的了 3.无法进入使用页面,设备被占用 点击“马上使用”,打开了一个新标签页,随后该标签页立马消失,但列表中该设备处于被占用状态,导致无法再进入使用页。...tidevice在安装过程中,安装一个名为cryptography的包时,报错了,cryptography编译失败,因为系统中缺少pep517。...安装pep517 pip install pep517 再次安装cryptography pip install cryptography 但是还是报错上述同样错误,系统提示pip版本过低。

    3.6K20

    Python中的requirements.txt文件

    第二步肯定要安装依赖 requirements.txt可以通过pip命令自动生成和安装 ? 生成requirements.txt文件 pip freeze > requirements.txt ?...约束文件提供了一种更好的方法:为您的组织编写一个约束文件,并在各处使用。如果要安装的东西需要安装“ helloworld”,那么将使用约束文件中指定的固定版本。...从Wheels安装 “车轮”是一种内置的存档格式,与从源存档构建和安装相比,可以大大加快安装速度。有关更多信息,请参见 Wheel文档,PEP 427和PEP 425。 pip倾向于有轮子的地方。...要直接从车轮档案中安装: pip install SomePackage-1.0-py2.py3-none-any.whl 对于无法使用轮子的情况,pip提供了pip wheel作为一种便利,可根据您的所有要求和依赖性来构建轮子...,因此,如果在站点范围的文件和每个用户的文件中都指定了全局超时,则将使用后一个值。

    9.1K20

    【随手记】pyenv的安装及使用

    问题描述 周末,我发现了一个有趣的开源项目,打算在本地尝试运行。该项目兼容的 python 版本为 3.7 - 3.9,好嘛哥们就装了3.6。...因此,我需要一个python版本管理工具来切换不同版本。 由于新电脑尚未安装conda,且目前的工作并未涉及复杂的依赖关系或科学计算、机器学习任务(哥们只是个后端),我选择了轻量级的 pyenv。...)" 使用过程 1、克隆我感兴趣的项目至本地,并设置当前文件夹的环境为 pyenv local 3.8.0 2、安装对应的 requirements.txt 中的三方库 pip3 install -i...https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt 如果在安装 opencv-python 时出现卡在 PEP-517 的情况,升级...tab=readme-ov-file opencv-python安装卡住PEP 517 https://blog.csdn.net/ilovejohnny/article/details/121031935

    77310

    PDM 2.0 有什么新特性?

    当你克隆一个已有的项目,在项目中第一次执行 pdm install 时,PDM 会检查项目中是否存在一个 __pypackages__ 文件夹1,如果存在,会使用 PEP 582 包结构, 否则会自动为你创建一个虚拟环境并在其中安装依赖...PDM 搭配其他后端 PDM 虽然有一个自己的后端2 pdm-pep517 但它其实没有和任何后端绑定,你依然可以使用比如 flit-core, hatchling, setuptools 作为后端,只要它支持读取...具体的值为: Linux: $XDG_CONFIG_HOME/pdm (一般为 ~/.config/pdm) MacOS: ~/Library/Preferences/pdm Windows: %USERPROFILE...直接执行 pdm publish,PDM 会自动打包项目,然后上传到 PyPI。当然,在这之前, 你需要配置好上传所需要的用户密钥。...所以我们彻底摒弃了使用 pip 的内部 API,转而自己造了一个轮子 unearth 来使用。这将增加稳定性,也方便了下游的打包者。

    34320

    Python语言编程规范与优化建议

    如果某个代码段的缩进不对,那么整个程序就是错的,要么是语法错误无法执行,要么是逻辑错误导致错误结果。 (2)每个import语句只导入一个模块,并且要按照标准库、扩展库、自定义库的顺序依次导入。...稍微有点例外的是,在正常的赋值表达式中等号两侧都是各增加一个空格,但在调用函数并使用关键参数时一般并不在等号两侧增加空格。正所谓“张而不弛,文武弗能也;弛而不张,文武弗为也;一张一弛,文武之道也。”...因此,在开发项目中,应优先使用Python内置对象、函数和类型,其次考虑使用Python标准库提供的对象,最后考虑使用第三方扩展库。然而,有时候只使用内置对象和标准库对象的话,很可能无法直接满足需要。...可以使用pip install -U pep8来安装pep8工具,然后使用pep8 test.py来测试test.py文件中Python代码的规范性,pep8常用的可选参数有--show-source、...flake8结合了pyflakes和pep8的特点,可以检查更多的内容,优先推荐使用,使用pip install flake8可以直接安装,然后使用flake8 test.py即可检查test.py的规范性

    1.3K40

    airflow 的安装部署与填坑

    Python 的包管理工具 pip 是一个非常优秀的工具,Python 相关的库都可以使用 pip 安装,airflow 也不例外。废话不多说,直接上操作步骤。...截止目前 2018年8月14日 ,airflow 最新稳定版本为1.8 ,apache-airflow 的最新稳定版本为1.9,其实都是 airflow,使用起来是一样的,只是版本本区别而已,官方指导的安装也是...airflow 1.8 使用本地时区。 airflow 1.9 使用 UTC 时区。(后面会介绍如何修改) 以 ubuntu 16.04为例,其他 linux 操作系统类似。...问题来了,现在的任务大多跑在生产环境,生产环境与外网都是物理隔离的,不能直接联网怎么办?别急,pip 都为你想好了。 离线安装 以 airflow 1.9 版本为例,其他版本的操作也是一致的。 1....原因是我们安装了apache-airflow[all] ,可能的原因是 hdfshook 与 Python3 不兼容,不过些错误并不影响我们使用 airflow,完全可以忽略,如果不想看到此错误,完全可以删除

    2.5K40

    【Python】已解决:pymssql._pymssql.OperationalError: (20009, b’DB-Lib error message 20009, severity 9:nUn

    防火墙设置:防火墙设置阻止了客户端与数据库服务器之间的连接。 DNS解析问题:提供的服务器地址无法通过DNS解析到正确的IP地址。...三、错误代码示例 以下是一个可能导致该错误的代码示例: import pymssql # 尝试连接到SQL Server数据库 conn = pymssql.connect(server='wrong_server_address...: server参数的值为’wrong_server_address’,这是一个错误的服务器地址,导致客户端无法连接到数据库服务器。...综合以上步骤,正确代码示例如下: import pymssql # 使用正确的服务器地址、端口号、用户名和密码连接到SQL Server数据库 conn = pymssql.connect(server...五、注意事项 在编写代码时,需注意以下几点,以避免类似错误: 验证服务器地址:在代码中使用的服务器地址应事先验证其可达性,确保地址正确。

    53310

    Linux环境安装Dlib——以Centos7为例

    Dlib是较流行的人脸识别的开源库,使用c++编写,里面包含了许多的机器学习算法,在python中也可以使用。...在使用pip直接安装dlib时候大都会报各种各样的错误 Python的安装看这里: Linux环境安装Python3——以Centos7为例 笔者现在使用的环境为CentOS7.6、Python3.6.8...首先我们先使用pip安装下面几个库 pip3 install scikit-build pip3 install cmake pip3 install boost 如果未安装wget,输入以下命令安装...-19.19.tar.bz2 如果报错,使用以下命令安装bzip2 yum -y install bzip2 解压完成后,进入dlib目录 cd ....517 and cannot be installed directly 意思是缺少Python3编译环境 可以通过安装python3-devel解决 yum install python3-devel

    2.8K20

    自己动手写软件——SSH、FTP和SQL server的密码破解

    SSH登录验证 SSH的登录需要我们安装一个paramiko第三方模块,安装命令: pip install paramiko ?...FTP登录验证 FTP连接可以直接使用python内置模块——ftplib,连接过程编码如下: import ftplib server_ip = '127.0.0.1' port = 21...SQL server登录验证 连接SQL server数据库需要我们安装第三方模块——pymssql,安装命令如下: pip install pymssql 安装完成后,我们的用户名密码验证编码如下...("用户名:%s,密码:%s登录成功\n" % (user, password)) except : print("用户名:%s,密码:%s无法登录成功\n" % (user, password...这样梳理之后,我们发现我们的密码破解工具输入参数应该是五个,除了前面说的服务器地址、服务器端口、用户名和密码以外,再添加一个破解的协议类型。输出为破解结果。

    1.2K20

    函数计算 Python 连接 SQL

    函数计算的 runtime 运行时的目录是只读的,所以对于需要使用 apt-get 和 pip 安装依赖的场景,需要将依赖安装在代码目录而不是系统目录。...因为有些依赖是平台相关的,在 mac 系统安装的动态链接库无法在函数计算的 linux 环境下运行, pymssql 恰好属于这种情况。本文我将使用 fc-docker 进行安装和本地测试。...对于不需要使用老本 pymssql 的用户看到这里就可以结束了。...编译时依赖可以直接安装在系统目录里,运行时依赖必须安装在本地目录下。...小结 这是一份来迟的函数计算使用 sql server 数据库的配置文档。当前版本的 pymssql 已经不再需要源码安装了。但是 pip 源码包安装的方法,对于其他类似的场景也是适用的。

    1.4K20

    setup.py即将下岗,PEP 518 说明继任者

    但是当一个项目选择使用setuptools时,像setup.py这样的可执行文件的使用就成了一个问题。你无法在不知道setup.py文件依赖关系的条件下执行它。...因为当pip无法推断出项目需要的是除setuptools以外的某个东西时,使用setuptools便会产生冲突。...为了提供更多的上下文和推动本PEP,可以把所需的(大体)步骤看成是生成一个手工项目的过程: 项目的源代码签出 构建系统的安装 构建系统的运行 本PEP涵盖了第2步。...预计未来的PEP将包括第3步,包括如何使构建系统动态指定构建系统执行其工作所需的更多依赖性。 但是,本PEP的目的是为构建系统指定要开始运行所需的最低要求。...一个嵌套更深的命名空间 这个PEP的早期草案有一个顶级[Package]表。 想法是为语义版本方案限定范围(请参阅语义版本关键字来了解这个想法被拒绝的原因)。

    1.9K70

    3大利器推荐,帮你写出规范漂亮的python代码

    1.安装与使用 与python的其他库一样,直接 pip install pylint 即可完成安装,另外anaconda自带pylint,所以如果安装过anaconda不必再单独安装此库。...image.png 其中开头的大写字母表示错误类型(主要有C\R\W\E\F几类);以逗号间隔的两个数字表示发现问题的位置(行和 列);其后是对问题的具体描述,括号里的内容称为message id,可以简单理解为错误类型的详细分类...C——违反代码风格标准; R——代码结构较差; W——关于细节的警告; E——代码中存在错误; F——导致Pylint无法继续运行的错误。...这种情况下,pylint也提供了一种操作,可以手动屏蔽某些问题提示,以刚才的代码为例,剩下的几个问题主要是因为使用了Tab键、变量命名不规范、缺少文档说明造成的,我们可以使用 pylint --disable...1).安装与使用 与pylint类似,直接pip install black即可完成该模块的安装,不过black依赖于Python 3.6+,但它仍然可以格式化Python2的代码。

    1.1K30

    xmake v2.2.8 发布, 新版vs工程生成插件

    最后新版本开始尝试直接安装lua bitcode脚本,来减少安装包的大小(控制在2.4M以内),提高xmake启动加载的效率。...不过,需要注意的事,此版本的源码结构改成了git submodule来维护,所以老版本的xmake update无法完整支持对新版本的更新,请参考安装文档进行完整安装。...项目源码 官方文档 新特性介绍 使用新版vsxmake集成编译 原先的vs生成插件对xmake的rules是没法支持的。...因此,为了解决这个问题,新版本的vs生成插件通过在vs下直接调用xmake命令,去执行编译操作,并且对intellsence和定义跳转,还有断点调试也做了支持。...针对io模块增加文件锁接口 #513: 增加对android/termux终端的支持,可在android设备上执行xmake来构建项目 #517: 为target增加add_cleanfiles接口,实现快速定制化清理文件

    91210
    领券