Python 如果已经将列表定义为变量,如何检查变量是否为列表类型?

Python 如果已经将列表定义为变量,如何检查变量是否为列表类型?,python,typing,Python,Typing,正如标题所说,不幸的是,我正在使用的平台迫使我将“list”定义为变量名。此外,type是内置的变量名。考虑到本系统中使用的服务器端语言是Python,这是一个相当糟糕的疏忽!我需要确定一个变量是否属于list类型。通常,我会使用 isinstance(q,list) 或 类型(q)=列表 我不太清楚如何做到这一点。虽然我对Java和Javascript/jquery有着丰富的经验,但我对Python还是比较陌生的。有什么想法吗?首先,我不知道什么样的平台会使用保留关键字,如list作为变量名,

正如标题所说,不幸的是,我正在使用的平台迫使我将“list”定义为变量名。此外,type是内置的变量名。考虑到本系统中使用的服务器端语言是Python,这是一个相当糟糕的疏忽!我需要确定一个变量是否属于list类型。通常,我会使用

isinstance(q,list)

类型(q)=列表


我不太清楚如何做到这一点。虽然我对Java和Javascript/jquery有着丰富的经验,但我对Python还是比较陌生的。有什么想法吗?

首先,我不知道什么样的平台会使用保留关键字,如
list
作为变量名,但您可以通过

type(q) == type([])

编辑:当我在写一个答案时@Justin已经在评论中回答了。

首先,我不知道什么样的平台会使用像
列表这样的保留关键字作为变量名,但是你可以通过

type(q) == type([])

编辑:当我在写一个答案时@Justin已经在评论中回答了。

内置名称也可以通过
内置模块获得,如果您对名称进行阴影处理

>>> import builtins
>>> builtins.list is list
True
>>> list = 3
>>> builtins.list is list
False
>>> builtins.list("abc")
['a', 'b', 'c']
>>> del list
>>> builtins.list is list
True

该模块也可以使用,而无需使用内置名称
\uuuu内置名称\uuuuu

内置名称也可以通过
内置名称
模块使用,如果您对名称进行阴影处理

>>> import builtins
>>> builtins.list is list
True
>>> list = 3
>>> builtins.list is list
False
>>> builtins.list("abc")
['a', 'b', 'c']
>>> del list
>>> builtins.list is list
True

该模块也可使用,而无需使用内置名称
\uuuuuuuuuuuuuuuuuuuuuuuu

type(a)==type([])
isinstance(q,[])。\uuuuuuuu class\uuuuuuuuuuu)
。假设您正在使用的这个疯狂的平台不会突然决定将
isinstance
定义为变量……哈哈!好的,非常感谢,我会试一试,我很感激!那不行。它说“类是一个无效的属性名,因为它以“.”开头。确切地说,什么是一个无效的属性名。假设您正在使用的这个疯狂的平台不会突然决定将
isinstance
定义为变量……哈哈!好的,非常感谢,我会试一试,我很感激!那不行。它说“类是一个无效的属性名,因为它以uu开头”。确切地说,
\uuuuu类uuu
是一个无效的属性名吗?