zoukankan      html  css  js  c++  java
  • 由于包名与引用的库名相同导致的报错

    # coding:utf-8
    import requests
    
    url = 'http://httpbin.org/ip'
    url_get = 'http://httpbin.org/get'
    
    def requests1Test():
        respones = requests.get(url)
        print "---->Response Headers:"
        print respones.headers
        print "---->Response Body:"
        print respones.text
    if __name__ == "__main__":
        requests1Test()
    
    

    在pycharm中运行出现以下报错:AttributeError: 'module' object has no attribute 'get'

    1.查看导入的包是否安装了(安装无误pass)

    2.查找网上解决方法:

    这其实是.pyc文件存在问题,问题定位:

    查看import库的源文件,发现源文件存在且没有错误,同时存在源文件的.pyc文件

    问题解决方法:

    (1). 命名py脚本时,不要与python预留字,模块名等相同

    (2). 删除该库的.pyc文件(因为py脚本每次运行时均会生成.pyc文件;在已经生成.pyc文件的情况下,若代码不更新,运行时依旧会走pyc,所以要删除.pyc文件),重新运行代码;或者找一个可以运行代码的环境,拷贝替换当前机器的.pyc文件即可

    但是改了xx.py的名称也没用

    3.最后发现包名与import库的名称一样,修改之后运行成功

    错误的包名:

    改成其他名称

    结论:在创建包名,文件名时不要使用引用的库名

  • 相关阅读:
    List接口的实现类
    Java 容器概述
    PayPal支付接口方式(checkout)集成
    Java Bio、Nio、Aio区别
    Java Aio
    Java Nio
    Java Bio
    Java Io流
    Java 23种设计模式
    SQL检测超时工具类
  • 原文地址:https://www.cnblogs.com/misslin/p/6510351.html
Copyright © 2011-2022 走看看