[Python报错] ImportError: cannot import name ‘timer’ from ‘timer’

news2024/12/22 23:52:06

[Python报错] ImportError: cannot import name ‘timer’ from ‘timer’

前言

我最近遇到这个报错,卡了我好长时间去解决,我在互联网上找了很多资料,遗憾的是,我没找到有其他人遇到的类似的问题。所以在这里做一下记录。事实上,我的这种解决问题的思路适用于解决大多数类似的 cannot import name xxx 的问题。

文章目录

  • 前言
  • 报错信息描述
  • 基础运行环境
  • 报错原因分析
  • 解决方案

报错信息描述

报错信息:ImportError: cannot import name 'timer' from 'timer'

报错详细信息:ImportError: cannot import name 'timer' from 'timer' (C:\Users\Administrator\AppData\Roaming\Python\Python39\site-packages\win32\timer.pyd)

报错文件:timer.pyd

报错代码:from timer import timer

我的报错完整截图:

image-20230525193436917

基础运行环境

任何计算机相关的问题都不能脱离运行版本来看。

我的python运行环境如下:

  • 操作系统:win11
  • conda版本:22.9.0
  • python版本:3.9

报错原因分析

1、首先,我们要明确:报错的地方是你自己写的python代码中,有地方写了【from timer import timer】这句话导致的报错。

下图是我的python代码示例。我创建了一个test.py。代码中只有两句话,如果正常运行将看到控制台中打印数字0:

image-20230525192416765

2、然后,分析这句报错信息:从【cannot import name ‘timer’ from ‘timer’】这句话看得出来,不是没有pip install timer包的问题,因为通常来说没有安装包的报错是【ImportError: No module named xxx】;我们可以通过命令pip list查看timer是否安装:

image-20230519094558250

显然,timer包已经安装了。

3、最后,【cannot import name ‘timer’ from ‘timer’】这句话的意思是无法从timer包中导入名为timer的函数。

不是没有找到,而是找到了但却无法导入。由此,可以推断出是系统中存在两个或多个timer包并且版本不一样(或者单纯就是两个完全不同的包刚好名字都取成了timer),而优先导入的timer包中不存在timer函数。

我们再结合后面那句话【(C:\Users\Administrator\AppData\Roaming\Python\Python39\site-packages\win32\timer.pyd)】可以看出Python解释器是(优先)找到【Python39】自带的【site-packages】中的【timer.pyd】(pyd是python的编译中间文件)而不是优先找到虚拟环境的【site-packages】中的【timer.pyd】。

由此我们可以断定系统中确实存在两个【timer】。

下面是图示:

我们希望解释器使用的是虚拟环境中的【timer】:

image-20230519095918898

实际上,解释器找到的却是Python39中的【timer】:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ogBnDZzr-1685016654981)(https://qyhbucket.oss-cn-shanghai.aliyuncs.com/techblog/image-20230519100232443.png)]

解决方案

将Python39自带的timer.pyd重命名掉(如:timer_rename.pyd),或者删掉(比较危险),强制使用虚拟环境中安装的timer,就可以了。

image-20230519100545035

改完之后,我们重新运行test.py:

image-20230525193654245

可以看到控制台成功打印了数字‘0’。

问题得到了解决~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/568619.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

两年外包,从4K涨到了15K....

我18年毕业于一个普通二本学校,电子信息工程学院,是一个很不出名的小本科。大学期间专业知识也没有去认真的学习,所以毕业的时候就随便找了一份工作,在一个外包公司做功能测试。 记得那时候薪资大概是4k左右,因为是以…

神经网络实验---人工神经网络(2)

本实验目的主要是掌握梯度下降法的优化算法;能够使用tf.keras构建Sequential模型,完成多分类任务。 1. 实验目的 ①掌握梯度下降法的优化算法; ②能够使用tf.keras构建Sequential模型,完成多分类任务。 2. 实验内容 ①下载MNIS…

架构设计之复用性概谈

作为开发人员,你对复用这个概念一定不陌生。在开发过程中,我们把系统中通用的代码逻辑抽取出来,变成公共方法或公共类,然后在多个地方调用,这就是最简单的技术上的复用。 但一开始,我们不会过多地考虑复用&…

迭代后首波实测!360智脑一键联网,代码超强,AI诈骗一眼看穿

360大模型(又)交卷了!作为国内首个能联网的大模型,360智脑给了我们怎样的惊喜?话不多说,新鲜出炉的第一手实测来了。 不得不说,自从GPT大模型混战开赛之后,教主周鸿祎可谓是存在感十…

易观分析:消费金融机构以APP为触点,创新消费场景,激发消费活力

易观:随着“用好消费金融、释放消费潜力”等金融支持扩内需的持续深入,消费金融APP活跃用户规模将保持稳健增长的态势,进而在拉动内需、促进消费升级、服务实体经济中扮演更重要的角色。 一、疫情防控较快平稳转段,激发消费市场活…

总结button,input type=“button“,input type=“text“中:[在value添加值] 和 [标签内添加值]的区别

1.如果是需要一个 普通文本框 <input></input>和<input type"text"></input>外观相同 都是 2.对比button,input type"button",input type"text"中&#xff1a;在value添加值 和 标签内 添加值 html中&#xff1a; &l…

第十三章 常用类(Math 类、Arrays 类、System类、Biglnteger 和BigDecimal 类、日期类)

一、Math 类&#xff08;P481&#xff09; Math类包含&#xff0c;用于执行基本数学运算的方法&#xff0c;如初等指数、对数、平方根和三角函数 &#xff08;1&#xff09;abs&#xff1a;绝对值 &#xff08;2&#xff09;pow&#xff1a;求幂 double pow Math.pow(2, 4); /…

520 | ChatGPT会是一个完美情人吗?

A GENERATIVE AI EXPERIMENT 机器人能感受到爱吗&#xff1f;这个困扰了科学家们多年的未解之谜&#xff0c;如今随着ChatGPT的爆火再次回到人们的视线中。虽然我们尚未准备好为机器赋予情感&#xff0c;但机器已经可以借助生成式AI来帮助人类表达自己的情感。 自然情感表达 …

网络原理(七):http 协议(下)

上一章只是谈到了http 中的几个header属性&#xff1a; Host &#xff1a; 域名端口号Content-Length &#xff1a;表示 body 中的数据长度Content-type &#xff1a;表示 body 中的数据格式。User-Agent &#xff1a;表示浏览器/操作系统的属性。Referer &#xff1a; 表示这…

三年的功能测试,让我女朋友跑了,太难受了...

简单概括一下 先说一下自己的情况&#xff0c;普通本科&#xff0c;18年通过校招进入深圳某软件公司&#xff0c;干了3年多的功能测试&#xff0c;21年的那会&#xff0c;因为大环境不好&#xff0c;我整个人心惊胆战的&#xff0c;怕自己卷铺盖走人了&#xff0c;我感觉自己不…

Spring之DI(依赖注入)

依赖注入&#xff08;DI&#xff09;是一个过程&#xff0c;在这个过程中&#xff0c;对象仅通过构造函数参数、工厂方法的参数或在对象被实例化后通过属性设置来定义它们的依赖项&#xff08;即与该对象一起工作的其他对象&#xff09;。然后&#xff0c;容器在创建 bean 时注…

【网络】无线路由器和路由器的配置方法

目录 &#x1f352;常见的接入互联网方式 &#x1f353;WAN配置 &#x1f353;LAN口配置 &#x1f353;WLAN配置 &#x1f353;WLAN安全 &#x1f352;路由设备管理 &#x1f353;路由器内部组件 &#x1f353;Cisco路由器的启动过程 &#x1f353;基础命令 &#x1f34e;show …

【中间件漏洞】apache未知扩展名解析漏洞、addhandler导致的解析漏洞、换行解析漏洞(CVE-2017-15715)

目录 apache未知扩展名解析漏洞 漏洞复现 防范建议 AddHandler导致的解析漏洞 防范建议 Apache HTTPD 换行解析漏洞&#xff08;CVE-2017-15715&#xff09; 漏洞复现 防范建议 apache未知扩展名解析漏洞 Apache默认一个文件可以有多个以点分割的后缀&#xff0c;当最右边的后缀…

C#入门:编写运行第一个C#程序Helloworld

参考链接&#xff1a; C#入门学习-希里安 下载安装Visual Studio&#xff0c;创建项目 在官网下载安装Professional 2022即可. https://visualstudio.microsoft.com/zh-hans/ 下载时选择C#、.Net框架等支持&#xff0c;安装后运行&#xff0c;新建模板选择 Visual C#、Windo…

es集群配置与实际演示

es集群配置与实际演示 1》单服务器多节点部署一、准备环境二、安装jdk三、ElasticSearch部署四、实际演示 2》多台服务器集群部署一、准备环境二、安装jdk三、ElasticSearch部署四、实际演示五、密码及集群认证六、其他 集群分类&#xff1a; ES多节点集群分为两种&#xff0c;…

档案馆中温湿度要求的数据 资料分享

5.1 温度和湿度要求 5.1.1 档案馆各区域温度和湿度(本文件所指湿度为相对湿度,下同)设计应符合JGJ25—2010的规定。 5.1.2 档案库房温度和湿度应符合表1的要求。档案库房应维持温度和湿度相对稳定&#xff0c;温度日较差≤2 ℃,湿度日较差≤5%。温度和湿度取值应充分考虑设备…

Android 之MPAndroidChart图表案例

一 简介 1.1 图表用于直观的分析数据的分布情况&#xff0c;用于对比数据的大小和趋势。 1.2 图表的类型也非常多&#xff0c;常见的有折线&#xff0c;柱状&#xff0c;饼状&#xff0c;其它的有面积&#xff0c;散点&#xff0c;股价&#xff0c;雷达&#xff0c;仪表盘&am…

企业该如何自主构建信息化管理系统?

实践证明&#xff0c;企业自己搭建的信息化系统灵活性更高&#xff0c;更能契合企业的需求。 我们可以借助零代码平台自主搭建&#xff0c;既提供了各个应用系统的标准化功能&#xff0c;又支持自定义搭建&#xff0c;可根据企业自身需求修改。 全球领先的信息技术研究和顾问公…

【Servlet API详解】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔&#x1f93a;&#x1f93a;&#x1f93a; 目录 1. HttpServlet类 2. HttpServletRequest 2.…

【JUC基础】10. Atomic原子类

1、什么是Atomic Atomic英译为原子的。原子结构通常称为不可分割的最小单位。而在JUC中&#xff0c;java.util.concurrent.atomic 包是 Java 并发库中的一个包&#xff0c;提供了原子操作的支持。它包含了一些原子类&#xff0c;用于在多线程环境下进行线程安全的原子操作。使…