Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python如何知道变量的数据类型?_Python_Python 2.7_Python 3.x - Fatal编程技术网

Python如何知道变量的数据类型?

Python如何知道变量的数据类型?,python,python-2.7,python-3.x,Python,Python 2.7,Python 3.x,例如,我正在遍历字典mydict,如下所示: mydict = {"Name" : "Vincent Vega", "Profession" : "Gangster", "Age" : "42"} for k in mydict: print k, mydict[k] 现在,k只是一个循环变量,我甚至没有声明它。编译器怎么知道我所说的k,是指字典的键呢?for语句在对象上使用了一种特殊的方法(\u iter\u和next),这里是mydict)

例如,我正在遍历字典
mydict
,如下所示:

mydict = {"Name" : "Vincent Vega",
          "Profession" : "Gangster",
          "Age" : "42"}

for k in mydict:
    print k, mydict[k]

现在,
k
只是一个循环变量,我甚至没有声明它。编译器怎么知道我所说的
k
,是指字典的键呢?

for语句在对象上使用了一种特殊的方法(
\u iter\u
next
),这里是
mydict

每次迭代产生一个结果,存储在变量
k

对于字典,方法返回字典的键


更多信息。

for的
循环对循环的序列调用
iter()
,并对结果使用
next()
调用。
不同的对象可以返回具有不同行为的不同迭代器,这就是为什么有时会看到它在字典的键上迭代,而另一次会看到它在数组的索引上迭代,具体取决于iterable