Half
  • 192

Python 3.8 import records报错

因为是初学python,所有没有弄环境隔离那些的,然后用的PyCharm 2020.1 x64开发,最开始是好的,到后面突然不行了,不知道是不是导包冲突还什么,查了点资料,删除pyc文件重新编译没用,然后当前目录下也没用重名的文件,不知道这是什么原因。

image.png

代码:

import records
print("start")

报错信息:

E:\python3.8\python.exe E:/python-workspace/db2.py
Traceback (most recent call last):
  File "E:/python-workspace/db2.py", line 4, in <module>
    import records
  File "E:\python3.8\Lib\site-packages\records.py", line 11, in <module>
    from sqlalchemy import create_engine, exc, inspect, text
  File "E:\python3.8\Lib\site-packages\sqlalchemy\__init__.py", line 12, in <module>
    from sqlalchemy.sql import (
  File "E:\python3.8\Lib\site-packages\sqlalchemy\sql\__init__.py", line 7, in <module>
    from sqlalchemy.sql.expression import (
  File "E:\python3.8\Lib\site-packages\sqlalchemy\sql\expression.py", line 32, in <module>
    from sqlalchemy import util, exc
  File "E:\python3.8\Lib\site-packages\sqlalchemy\util\__init__.py", line 7, in <module>
    from .compat import callable, cmp, reduce, defaultdict, py25_dict, \
  File "E:\python3.8\Lib\site-packages\sqlalchemy\util\compat.py", line 202, in <module>
    time_func = time.clock
AttributeError: module 'time' has no attribute 'clock'
阅读 154
评论 5月17日提问
    2 个回答
    Half
    • 192

    自己解决了,解决方法是把所有使用pip下载的库都删光了,然后又重新下载了,这次下载是使用的pip3命令,不知道有没有关系,但是已经不报错了。

    评论 赞赏

      time.clock()在python3.8已经被移除了,可以使用time.perf_counter或者time.process_time来替代。

      解决办法

      • sqlalchemy这个包可能要升级了,你升级试一下
      • 或者找到compat.py这个文件,将对应的time.clock()修改为python3.8中对应的函数。
      评论 赞赏
        撰写回答

        登录后参与交流、获取后续更新提醒