检查变量的数据类型,否则引发错误

Checking for datatype of variable, else raise error

我有这段代码可以创建一个函数来插入 python 中的元组:

   def insert_t(t, i, v):
      l = list(t)
      l.insert(i, v)
      tu = tuple(l)
      return tu

代码有效,但有一个问题。将 t 传递给任何序列类型变量都可以。但我希望 t 只是一个元组,而不是列表或字符串。请参阅下文了解我的意思:

x = 'Hello'
insert_t(x, 2, 4)

代码适用于 x 是字符串的情况,但是,这破坏了代码仅附加到元组的目的。如果参数 t 不是元组,我希望它引发 TypeError

上网查了一下,发现有try...except存在,可以报出需要的错误。但是,我不知道如何实现它,因为如您所见,我以前从未使用过 try...except。我该如何实施?

在最基本的情况下,您要求:

if not isinstance(t, tuple):
    raise TypeError

当您收到 TypeError 时,您希望发生什么?


回答下面提出的问题。在代码的其他地方,您将编写:

try:
   ... 
   code that might generate a TypeError, possibly right here
   or possibly in some function that is called.
   ...
except TypeError:
   print(...)

您的 try/except 应该是您可以实际处理错误并明智地继续的地方。