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
falseen
V2EX  ›  Python

[深夜求助] 关于 time 模块的文件位置,各位 v 有谁知道的 ?

  •  
  •   falseen · 2017-03-18 00:46:54 +08:00 · 2276 次点击
    这是一个创建于 2810 天前的主题,其中的信息可能已经有所发展或是发生改变。

    提示:前面的废话有点长,大家可以直接看黑体部分。

    这个问题看起来很奇怪,我自己也奇怪怎么会有这种问题。。。但偏偏它却发生了。事情是这样的,前一段时间用 pyqt5 写了个客户端,想用 pyqtdeploy 编译一下,编译倒是成功了,但是无法运行。尝试了几次之后发现是 logging 模块的问题,替换了 logging 模块之后问题依旧。最关键的是 windows 下运行出错没有任何的提示,无法进一步找到根本原因。于是转战 linux ,编译之后仍然是无法运行,但是得益于 linux 的提示,终于让我找到了原因,原来是 time 模块的原因。 logging 模块引用了 time 模块,而 time 模块在编译的时候没有被包含进去,于是出现了 ImportError: No module named 'time' 的提示。但是我已经在 pyqtdeploy 界面上勾选了 time 模块,为什么还会出现这个错误呢。我注意到我自定义的那些模块都被成功包含进去了,于是我想到把 time 模块提取出来,当作自定义模块添加进去。

    但是问题来了。。。 time 模块的文件路径是什么呢 ? python3 的目录里面是没有的,如果在交互模式下输入 time 的话 显示的是 <module 'time' (built-in)> ,大部分模块都会显示路径,它却没有显示。所以想在这里求助各位 V 友,如何把 time 模块提取出来?或者如何让 pyqtdeploy 把 time 模块包含进去 ?

    第 1 条附言  ·  2017-03-18 03:56:30 +08:00
    @ryd994
    把用 pycharm 得到的 time.py 文件放入之后又遇到了新的问题,提示找不到 _socket.py ,放入 _socket.py 之后又有新的问题,感觉这是个无尽的坑啊。我似乎明白了,应该是 pyqtdeloy 编译的 python3 在启动的时候漏掉了什么语句,导致有些内置模块没有被加载。看来要研究一下 python3 加载内置模块的过程了。
    6 条回复    2017-03-18 02:26:39 +08:00
    flaneurse
        1
    flaneurse  
       2017-03-18 00:54:53 +08:00 via Android
    lib 里找不到...
    flaneurse
        2
    flaneurse  
       2017-03-18 01:00:41 +08:00 via Android
    liangmishi
        3
    liangmishi  
       2017-03-18 01:21:49 +08:00 via Android
    编辑器如果是 pycharm 的话, ctrl+鼠标去按一下 time 就可以找到源文件。
    如果不是用 pycharm 的话,一般就那几个文件夹,找找应该是有的
    falseen
        4
    falseen  
    OP
       2017-03-18 01:36:50 +08:00
    @flaneurse
    @liangmishi

    找到了,就是在 built-in 文件,关键是 built-in 文件在哪呢。。我用 pycharm 可以得到 time 的源码,或许可以放进去试试 ?
    zsz
        5
    zsz  
       2017-03-18 02:17:57 +08:00 via iPhone
    ipython , time??, 查看源码
    ryd994
        6
    ryd994  
       2017-03-18 02:26:39 +08:00   ❤️ 3
    这是 CPython 的 C 部分
    https://hg.python.org/cpython/file/tip/Python/pytime.c
    你的思路可能走偏了,不要提这种 A->B 的问题
    直接搜 pyqtdeploy time module
    粗略扫一下这篇可能对你有帮助 https://plashless.wordpress.com/2014/05/16/using-pyqtdeploy/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5938 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 02:16 · PVG 10:16 · LAX 18:16 · JFK 21:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.