2012-07-30 74 views
1

我可以以某種方式查看元組內容的類型和大小嗎?我想輸出是這樣的:元組類型內容python

(str, list, int)或什麼是可能的(只是打印它們是很難,因爲有嵌套表)

x = someSecretTupleFromSomewhereElse 
print type(x) 

<(type 'tuple')> 

回答

9
>>> data = ('ab', [1, 2, 3], 101) 
>>> map(type, data) 
[<type 'str'>, <type 'list'>, <type 'int'>] 

還顯示,你可以做到這一點的長度,對於不是序列的項目,我只會顯示None

>>> import collections 
>>> [(type(el), len(el) if isinstance(el, collections.Sequence) else None) 
    for el in data] 
[(<type 'str'>, 2), (<type 'list'>, 3), (<type 'int'>, None)] 
+2

不知道你可以映射到元組,cool:D – 2012-07-30 06:53:45

+2

@Vixen:'map()'適用於任何序列。 – 2012-07-30 06:54:55

+0

@ IgnacioVazquez-Abrams你的意思是任何迭代? – jamylak 2012-07-30 07:31:12