2016-03-08 120 views
0

我想將元組的整數轉換爲元組的字符串。 例如:將元組的整數轉換爲元組的字符串

data = [(2,3,4,...),(23,42,54,...),......] 

會導致:

d = [('2','3','4',...),('23','42','54',....)......] 

請注意元組是如何大和列表也大。

我嘗試下面的代碼,但它不給我,我一直在尋找的結果:

data = [(2,3,4,...),(23,42,54,...),......] 

d=[] 
for t in data: 
    d.append(str(t)) 

回答

5

此靠攏:

data = [[str(x) for x in tup] for tup in data] 

如果你確實需要元組

data = [tuple(str(x) for x in tup) for tup in data] 

或者,如果你喜歡更「實用」法:

data = [tuple(map(str, tup)) for tup in data] 

雖然它似乎map已經失寵與蟒蛇人羣(或者也許它永遠不會實際上是贊成;-)。

+0

非常感謝你的幫助。你很棒。我會在6分鐘內接受這個答案。 – Sam

0

這將遞歸轉換無限嵌套的列表和元組:

def stringify(something): 
    if type(something) == list: 
     return [stringify(x) for x in something] 
    elif type(something) == tuple: 
     return tuple(stringify(list(something))) 
    else: 
     return str(something) 
+2

小心地繞過「無限」這個詞 - 至少在大多數python實現中,您會遇到遞歸限制_sometime_。我不確定無法堆棧。 。 。嗯。 。 。 :-) – mgilson

相關問題