小编mat*_*kie的帖子

对 pkg_resources.DistributionNotFound 错误进行故障排除

为什么这个简单的程序在运行时会出现pkg_resources.DistributionNotFound错误,我们该如何修复它?

#setup.py
from setuptools import setup

setup(name='my_project',
    version='0.1.0',
    packages=['my_project'],
    entry_points={
        'console_scripts': [
            'my_project = my_project.__main__:main'
        ]
     },
)
Run Code Online (Sandbox Code Playgroud)

##my_project/__main__.py

import sys

def main(args=None):
     print("Do Something")

if __name__ == "__main__":
    main()
Run Code Online (Sandbox Code Playgroud)

构建: python setup.py install --root=target --prefix=usr
运行: .\target\usr\Scripts\my_project.exe

结果

Traceback (most recent call last):
  File "D:\code-maphew\scraps\bug-dist-not-found\target\usr\Scripts\my_project-script.py", line 6, in <module>
    from pkg_resources import load_entry_point
  File "C:\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\pkg_resources\__init__.py", line 3105, in <module>
    @_call_aside
  File "C:\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\pkg_resources\__init__.py", line 3089, in _call_aside
    f(*args, **kwargs)
  File "C:\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\pkg_resources\__init__.py", line 3118, in _initialize_master_working_set …
Run Code Online (Sandbox Code Playgroud)

python setup.py

5
推荐指数
1
解决办法
8822
查看次数

Ghostscript创建了巨大的图像,比预期的像素数量级更多

我使用此Ghostscript命令将PDF转换为图像:

gs \
 -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT \
 -dCOLORSCREEN \
 -dDOINTERPOLATE \
 -dMaxBitmap=500000000 \
 -dNumRenderingThreads=4 \
 -dAlignToPixels=0 \
 -dGridFitTT=0 \
 -dTextAlphaBits=4 \
 -dGraphicsAlphaBits=4 \
 -sDEVICE=jpeg \
 -dFirstPage=1 \
 -dDEVICEWIDTHPOINTS=1654 \
 -dDEVICEHEIGHTPOINTS=2333 \
 -dDEVICEXRESOLUTION=1654 \
 -dDEVICEYRESOLUTION=2333 \
 -sOutputFile=d:\images\%01d.jpg \
  d:\test.pdf
Run Code Online (Sandbox Code Playgroud)

它会转换图像,但图像为13675x27280像素.我想要1654x2333px中的图像.我究竟做错了什么?

ghostscript

4
推荐指数
2
解决办法
2579
查看次数

如果 __name_ ... 片段,如何让 vs 代码自动插入?

如何配置或启用visual studio代码自动插入标准:

if __name__ == '__main__':
Run Code Online (Sandbox Code Playgroud)

我看到它是在 2018实施的,但该票中讨论的用法对我没有任何影响。我一直在浏览文档和一般互联网,但我的搜索关键字没有打开相关页面。

visual-studio-code

4
推荐指数
2
解决办法
994
查看次数

使用`if ... else`或`if ... return;是否重要; {隐含其他}`?

这两种模式产生相同的结果.使用哪一个是否重要?为什么?

我更喜欢第二种,它有较少的缩进,只是看起来更清洁,但我没有看到它用得太多(在我去过的地方).如果由于某种原因不明智,我不想满足于某些事情并全部使用它.

如果别的

if not packages:
    help('download')
else:        
    for p in packages:
        do_download(p)
        verify_md5(p)
        etc(p)
Run Code Online (Sandbox Code Playgroud)

IF ...回报; 隐含的

if not packages:
    help('download')
    return

for p in packages:            
    do_download(p)
    verify_md5(p)
    etc(p)
Run Code Online (Sandbox Code Playgroud)

python flow-control

3
推荐指数
2
解决办法
557
查看次数