打印每个列表元素及其数据类型

时间:2017-02-09 14:49:14

标签: python python-2.7

列表示例是

$enquiry

基本上我需要编写一个迭代列表的程序,并将每个列表元素与其数据类型一起打印。

python新手,需要帮助入门。感谢

3 个答案:

答案 0 :(得分:2)

您写道:“我需要编写一个迭代列表的程序,并将每个列表元素与其数据类型一起打印出来。”而且你很难过,因为“我试过谷歌。只能找到相关材料,但没有具体的。”

您真正的问题是您还没有学会使用Google搜索编程问题的答案。关键是将问题分解为子问题并搜索如何解决每个问题:

  • 遍历列表
  • 获取数据类型
  • 打印元素和数据类型

我用Google搜索python iterate through a list。第一个结果是来自Learn Python the Hard Way的Exercise 32: Loops and Lists,其中包含以下代码:

the_count = [1, 2, 3, 4, 5]
# this first kind of for-loop goes through a list
for number in the_count:
    print "This is count %d" % number

这个结果

This is count 1
This is count 2
This is count 3
This is count 4
This is count 5

现在我用Google搜索了python determine data type。第一个结果是Stack Overflow问题How to determine the variable type in Python。以下是其中一个答案的相关摘录:

使用type

>>> type(one)
<type 'int'>

所以现在我们知道如何迭代以及如何获得类型。我们看到如何打印,而不是如何一次打印两件事。让我们谷歌python print。第二个结果是Python 2.7教程的Input and Ouput部分。事实证明,有很多方法可以同时打印多个东西,但是页面上有一个简单的例子。

>>> print 'We are the {} who say "{}!"'.format('knights', 'Ni')
We are the knights who say "Ni!"

所以把这一切放在一起我们得到:

for item in inList: 
    print '{}  {}'.format(item, type(item))

打印哪些:

1.1  <type 'float'>
2017  <type 'int'>
(3+4j)  <type 'complex'>
superbowl  <type 'str'>
(4, 5)  <type 'tuple'>
[1, 2, 3, 5, 12]  <type 'list'>
{'make': 'BMW', 'model': 'X5'}  <type 'dict'>

答案 1 :(得分:1)

这是一个非常基本的问题,只需查看the documentation about control flow即可轻松回答。

GetConsoleMode

答案 2 :(得分:0)

对你的问题的简短回答是:

print map(lambda x: (x, type(x).__name__), inList)

这里使用map函数,它有两个参数:

  • 要应用的功能;
  • 要迭代的数组。

此函数遍历数组的每个元素,并将给定函数应用于每个元素。应用程序的结果放在一个新函数中,该函数返回。

此外,您可以在此处看到定义匿名函数的lambda关键字。它需要x作为参数,然后返回包含此参数的对和其类型的字符串化。