假设我有一个非常简单的包,其结构如下:.

├── foo

│   ├── bar

│   │   └── __init__.py

│   └── __init__.py

└── setup.py

文件内容:setup.py:from distutils.core import setup

setup(

name='foobar',

version='',

packages=['foo', 'foo.bar'],

url='',

license='Apache License 2.0',

author='foobar',

author_email='',

description=''

)

foo/bar/__init__.py:def foobar(x):

return x

其余文件为空。

我使用pip安装包:cd foobar

pip install .

并确认安装正确。在

现在我想用存根文件创建一个单独的包:.

├── foo

│   ├── bar

│   │   └── __init__.pyi

│   └── __init__.pyi

└── setup.py

文件内容:setup.py:from distutils.core import setup

import sys

import pathlib

setup(

name='foobar_annot',

version='',

packages=['foo', 'foo.bar'],

url='',

license='Apache License 2.0',

author='foobar',

author_email='',

description='',

data_files=[

(

'shared/typehints/python{}.{}/foo/bar'.format(*sys.version_info[:2]),

["foo/bar/__init__.pyi"]

),

],

)

foo.bar.__init__.pyi:def foobar(x: int) -> int: ...

{看不出这个包是什么意思,但我无法识别它。当我把pyi文件放在主包中时,一切正常。在

如果您能给我一些建议,我将不胜感激:我一直试图从PEP 484 - Storing and distributing stub files中理解一些道理,但没有用。即使是pathlib部分似乎也冒犯了我的distutils

我试着把存根放进.PyCharmX.X/config/python-skeletons,但没用

有些方法可行,但不能解决问题:将存根文件放入当前项目并标记为源文件。在

在某些情况下,将存根路径添加到包中(至少在某些情况下)。在

因此,问题是:如何使用Python存根创建一个最小的、可分发的包,这将被现有工具识别。根据实验,我怀疑有两个问题:我误解了shared/typehints/pythonX.Y中的包应该创建的结构-如果这是真的,我应该如何定义data_files?在

PyCharm根本不考虑这些文件(这似乎与链接问题中的一些评论相矛盾)。在

它应该可以正常工作,但我犯了一些配置错误,并寻找不存在的外部问题。在

有没有既定的程序来解决这样的问题?在

python存根文件_打包存根文件相关推荐

  1. webpack打包样式资源_使用loader去打包css文件_打包less文件---webpack工作笔记004

    然后我们再来看看,怎么用webpack打包css资源文件, 因为我们知道webpack可以直接处理js,json文件,但是不能直接处理css文件,img文件对吧.. 我们现在,通过webpack的组件 ...

  2. tif文件转为shp文件_从Tif文件转为shp文件(ArcMap,代码)、gdal打包问题

    从Tif文件转为shp文件(ArcMap,代码) 利用ArcMap来进行转换,以预测出来的滨海湿地图像为例 第一步:打开ArcMap中的栅格转面工具 ArcMap中的栅格转面工具 点击栅格转面之后,选 ...

  3. pydicom读取头文件_.dcm格式文件软件读取及python处理详解

    要处理一些.dcm格式的焊接缺陷图像,需要读取和显示.dcm格式的图像.通过搜集资料收集到一些医学影像,并通过pydicom模块查看.dcm格式文件. 若要查看dcm格式文件,可下echo viewe ...

  4. python利用实现pyinstaller打包多文件打包

    最近用python写了一个界面化程序,想要利用pyinstaller打包成EXE文件,所以用这篇文章记录一下. 文章目录 安装库 参数 介绍 指令 打包演示: 注意!!!!!!!! 安装库 1.安装p ...

  5. python 循环写文件_循环-读写文件-字符编码

    目录: 1.1 while与for循环 1.赋值魔法 #1. 序列解包: 将多个值的序列解开,然后放到序列的变量中. x,y,z = 1,2,3 print(x,y,z) #the result : ...

  6. python 重复图片_删除重复文件或图片(去重)的python代码

    通过python爬虫或其他方式保存的图片文件通常包含一些重复的图片或文件, 通过下面的python代码可以将重复的文件删除以达到去重的目的.其中,文件目录结构如下图: # /usr/bin/env p ...

  7. python 修改pom文件_引用pom文件

    Maven2集成Idea创建多模块项目 创建项目 选择Maven Module,新建一个Maven项目 选择maven-archetype-quickstart选项,点击下一步 顶级项目就创建好啦,把 ...

  8. java文件打包成jar文件_将java文件打包成jar包步骤

    将mypackage包中的FrameDemo.java文件打包成可执行成jar包 步骤1:先将程序中所有类打包成一个包 编译mypackage包FrameDemo.java文件,将类文件存入D盘Jar ...

  9. python 追加写文件_如何往文件中追加文本

    在用python从网站中爬取内容并保存到本地的txt文件中时,发现每次写入都是把txt文件中原来存在的内容覆盖掉了,那么如何才能在原来的基础上继续往里面添加内容呢? 1.原来的打开文件的方式是:fil ...

  10. php将文件夹打包zip文件,php将文件夹打包成zip文件

    php将文件夹打包成zip文件:function addFileToZip($path,$zip){ $handler=opendir($path); //打开当前文件夹由$path指定. while ...

最新文章

  1. windows中进程详解
  2. 一个美国女警的工作记录(转载)
  3. python字典输出_Python字典/循环输出
  4. linux C 编译时手动链接遇到的问题(未解决)
  5. Android 系统(47)Android.mk的用法和基础
  6. 几个不错的开源的.net界面控件[转贴]
  7. java基础----变量与常量+作用域
  8. springMVC系列之(四) spring+springMVC+hibernate 三大框架整合(转)
  9. 简易呼吸灯c语言程序,51单片机(呼吸灯)C语言版
  10. 使用TypeScript两年后,还值得吗?
  11. 雅思备考-口语词组积累-第二章
  12. php实现钟表,用html5实现一个简单的钟表外观
  13. PHPEMS +XAMPP 验证码显示不出来解决方法
  14. 计算机应用杂志论文格式要求,计算机应用专业论文格式说明.doc
  15. 2022软工第二次个人作业
  16. BUCK电源芯片BST引脚100nF电容的作用
  17. python_考勤时间
  18. HTML+CSS制作七夕情人节求婚动画(520情人节程序员表白)
  19. html画折线图没有坐标数值,教大家excel折线图纵坐标轴数值与实际值不一致怎么办...
  20. 4款宝藏国产软件,装了就舍不得卸载,白嫖必备

热门文章

  1. matlab中关于变量名的规定,在MATLAB中,以下变量名命名正确的是()A:052DB:H123C:_12D:1_D...
  2. IOS UIKit基础控件的使用
  3. HTML网页设计制作 dreamweaver网页源代码 北京故宫旅游景点网站设计
  4. 笔记本电脑的触摸区域操作
  5. matlab水印提取
  6. linux下安装mysql8.0
  7. linux设置开机自动运行脚本的方法
  8. 23种PHP开发工具PHP IDE集合
  9. 阿里云网盘:阿里云盘公测预约中,附官网地址入口
  10. SpringBoot+SpringBootJPA+Thymeleaf实现基本CURD+分页