V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
tywtyw2002
V2EX  ›  Python

目前有什么软件可以检测 python 的包依赖关系呢,帮助打包 py 代码成模块。

  •  
  •   tywtyw2002 · 2015-02-26 14:13:22 +08:00 · 3080 次点击
    这是一个创建于 3591 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近因为工作需要,需要把一些代码移打包并且植到virtualenv环境下。
    但是因为代码比较陈旧,几百个py文件被放在了n个目录下面,外加上没有留下requirement.txt 所以打包成egg文件很难。

    目前在做的就是依赖关系的检查,换句话说就是检查import的包是不是系统自带的。
    以及完成打包后,是否不会影响项目的运行。

    现在方法写的很土就是找import语句,用imp去检查包是否存在,再用exec去执行这个import语句。
    检测包还是比较简单的,但是在语法分析上面的难度还是很大,要做很多的parse。
    比如imp检测的时候 from os.path import exists 就需要把os.path后面的path去掉。
    还有一些换行之后的东西。或者是代码中存在的try:import。。。。 except: import。。。。

    是否有软件可以帮助把陈旧的代码打包成模块呢?
    1 条回复    2015-02-26 15:11:56 +08:00
    sivacohan
        1
    sivacohan  
       2015-02-26 15:11:56 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3114 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 13:32 · PVG 21:32 · LAX 05:32 · JFK 08:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.