如何在Python中导入类型提示的类?

2023-12-05

我有一个代码:

from pandas import DataFrame
def func(df: DataFrame) -> DataFrame
    ...

因为我实际上并没有在代码中创建 DataFrame 对象,所以我想做:

from typing import TYPE_CHECKING
if TYPE_CHECKING:
    from pandas import DataFrame
def func(df: DataFrame) -> DataFrame
    ...

这会引发错误:

E   NameError: name 'DataFrame' is not defined

我该如何解决? 我必须保留原装进口吗?导入一个我的代码实际上并不需要但仅用于提示的包对我来说没有什么意义


你会想要使用from __future__ import annotations这样就不会尝试在运行时计算表达式;注释将被视为隐式引用的字符串。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Python中导入类型提示的类? 的相关文章

随机推荐

  • 了解别名模板

    我问了一个question其中有几个对代码的引用 template
  • 如何处理 MongoDB 中的过时连接

    在 Mongo 中自动刷新过时连接的最佳方法是什么 回收 mongod 服务后 我从 Liferay Portlet 中得到此异常 com mongodb MongoException Network can t call somethin
  • Python for-in 循环前面有一个变量[重复]

    这个问题在这里已经有答案了 我看到一些代码 例如 foo x for x in bar if x occupants gt 1 这是什么意思 它是如何工作的 目前的答案都很好 但不要谈论它们只是如何句法糖我们已经习惯了某种模式 让我们从一个
  • 打印给定月份/年份的日历

    我正在做一个 Java 作业 它涉及在用户指定月份和年份后打印日历 我无法使用 Calendar 或 GregorianCalendar 类 我的问题是日历无法正确打印月份的第一天是星期六 我已经查看了我的代码大约一个小时了 我不确定出了什
  • TLS 1.2 在 cURL 中不起作用

    我在卷曲使用 TLS1 2 的 HTTPS url 时遇到问题 在卷曲操作中 我将登录数据发布到网站并将其保存在 cookiefile 中 我收到的错误消息是这样的 error 14077438 SSL routines SSL23 GET
  • 使用 Python 读取 RTF 文件时出现欧元符号问题

    我需要使用 Python 和 pyRTF 生成 RTF 文档 一切正常 我对重音字母没有问题 它甚至接受欧元符号而没有错误 但不是 我得到这个标志 我用这种方式对字符串进行编码 x encode iso 8859 15 我用谷歌搜索了很多
  • 将大型 VB6 应用程序升级到 .NET。对VB迁移合作伙伴的看法

    我有一个非常大的 VB6 代码库 其中包含大量第 3 方控件 想要将其移至 NET 重写它是毫无疑问的 客户认为花钱获得同样的东西没有任何价值 使用内置升级向导迁移到 NET 基本上是不可能的 有没有人尝试过 VB Migration Pa
  • Windows 上的插入器

    是否可以替换系统函数 就像在 Linux 和 Solaris 上使用 LD PRELOAD 一样 例如通过设置环境变量 LD PRELOAD path to mymalloc so 我将替换 malloc 函数 而不是在已安装在系统库中的
  • 循环#includes是如何解决的?

    在c中 假设我们有2个文件 1 h include lt 2 h gt blah blah 我们有 2小时 include lt 1 h gt code 这是怎么解决的 通常 您使用与文件名相对应的 ifndef define 来保护包含文
  • 当数据可以包含逗号时,按逗号分割字符串

    我有一个 CSV 文件 不是我设计的 现在无法更改 也永远无法更改它 其中包含如下行 Surname Firstname yes no somestring whatever etc 正如你在这里看到的 第一个 不是我想要分割字符串的逗号
  • MediaPlayer 在 Android 5.0 (Lollipop) 中抛出错误

    我编写了一个使用 HTTP 连接传输 MP3 的媒体应用程序 这在 Android 版本 2 x 4 x 上运行良好 但现在在 5 x 中生成错误 该应用程序循环播放包含 MP3 的播放列表对象 每个 MP3 都有自己唯一的 HTTP 地址
  • 在AWS lambda中创建utils.py

    I had a def hello 功能在我的home file py文件 我创建了一个home common utils py文件并将函数移到那里 现在 我想将其导入到我的文件中file py 我是这样导入的 from utils imp
  • iPhone中有系统级后台队列进程吗?

    我需要保存一个大文件 有时需要很长时间才能完成 用户可能只是关闭应用程序 我想知道iPhone SDK是否可以接手这个未完成的大任务 看来iPhone自带的邮件系统可以后台发送 我准备了一封电子邮件 单击 发送 然后立即关闭邮件应用程序 在
  • 使用 Excel VBA 创建工作表并根据特定列中的唯一项目移动数据

    我熟悉编程 但不熟悉 VBA 或 Excel 对象模型 我发现处理起来非常令人沮丧 我拥有的是一张带有列标题的数据 根据数据类型的不同 标题的数量也不同 因此我需要找到一个特定的列 在所有工作表中 该列并不总是位于同一位置 因此我无法对其进
  • Python 简单指数平滑

    我从 www nasdaq com 下载了 TESLA 股票 下载 CSV 文件后 我意识到我需要使用 Microsoft Excel 2016 转换 CSV 我使用 数据 选项卡 并单击文本到列 现在标题很清楚了 它们是 日期 收盘价 成
  • 在 Woocommerce 中获取自定义产品属性

    在 Woocommerce 中 我试图获取产品自定义属性值 但失败得很惨 我什么也没得到 所以我尝试 global woocommerce post product res get post meta product gt id print
  • CMake 设置默认搜索路径?

    我只是不想每次需要库时都设置环境变量 更不用说搜索的路径根本不标准化 至少在 Windows 上 一般来说 Find cmake 不会指定任何与 Windows 相关的位置 有没有某种方法可以使 CMake 搜索指定目录 强制配置错误的 F
  • 在Java中求多项式的根

    我需要找到一个 近似的 数值的 解勒让德多项式 我尝试了几个Java库 但没有一个有我正在寻找的东西 最接近的是commons math 它甚至有用于在拉盖尔求解器 但它没有公开该方法 是否有现有的解决方案或者我需要实施自己的解决方案 您可
  • Xamarin 中的调用目标引发了异常

    这是代码 运行它看看有什么问题 gt https github com x0axz CustomRenderer 在我的 Xamarin 应用程序中 有一个适用于 Android 的自定义相机渲染器 它是从ViewModel通过Messag
  • 如何在Python中导入类型提示的类?

    我有一个代码 from pandas import DataFrame def func df DataFrame gt DataFrame 因为我实际上并没有在代码中创建 DataFrame 对象 所以我想做 from typing im