Python tuple'ı dizeye dönüştür


101

Bunun gibi bir grup karakterim var:

('a', 'b', 'c', 'd', 'g', 'x', 'r', 'e')

Bunu şöyle bir dizeye nasıl dönüştürebilirim:

'abcdgxre'

1
Bunu da denereduce(add, ('a', 'b', 'c', 'd'))
Grijesh Chauhan

addBu örnekte ne var @GrijeshChauhan?
Steve

@Steve Modülden addfonksiyonu içe aktarmanız gerekiyor operator. Btw "".joinburada daha uygundur, ancak farklı türde nesneler eklemek istiyorsanız, ekleyebilirsiniz Bu çalışma örneğini
Grijesh Chauhan

Yanıtlar:


171

Kullanım str.join:

>>> tup = ('a', 'b', 'c', 'd', 'g', 'x', 'r', 'e')
>>> ''.join(tup)
'abcdgxre'
>>>
>>> help(str.join)
Help on method_descriptor:

join(...)
    S.join(iterable) -> str

    Return a string which is the concatenation of the strings in the
    iterable.  The separator between elements is S.

>>>

24
Tuple sayılar içeriyorsa çalışmaz. Tup'ı dene = (3, Yok, Yok, Yok, Yok, 1406836313736)
Raj

57
Rakamlar için şunu deneyebilirsiniz:''.join(map(str, tup))
Mo Beigi

27

burada Join'i kullanmanın kolay bir yolu var.

''.join(('a', 'b', 'c', 'd', 'g', 'x', 'r', 'e'))

13

Bu çalışıyor:

''.join(('a', 'b', 'c', 'd', 'g', 'x', 'r', 'e'))

Üretecek:

'abcdgxre'

Ayrıca virgül gibi bir sınırlayıcı kullanarak şunları da üretebilirsiniz:

'a,b,c,d,g,x,r,e'

Kullanarak:

','.join(('a', 'b', 'c', 'd', 'g', 'x', 'r', 'e'))

3

En kolay yol, Join kullanmaktır:

>>> myTuple = ['h','e','l','l','o']
>>> ''.join(myTuple)
'hello'

Bu işe yarar çünkü sınırlayıcınız aslında hiçbir şeydir, bir boşluk bile değildir: ''.


5
"myTuple" bir listedir btw
bariod
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.