Join () -merkkijonomenetelmä palauttaa merkkijonon yhdistämällä kaikki iterable-elementit erotettuna merkkijonoerottimella.
join()
Menetelmä tarjoaa joustavan tavan luoda merkkijonoja iterable esineitä. Se yhdistää iteroitavan osan (kuten luettelo, merkkijono ja sekoitus) merkkijonoerottimella (merkkijono, jolle join()
menetelmää kutsutaan) ja palauttaa ketjutetun merkkijonon.
Menetelmän syntaksi join()
on:
string.join (iteroituva)
Liity () -menetelmän parametrit
join()
Menetelmä kestää iterable (esineet pystyy palauttamaan sen jäsenten yksi kerrallaan), koska sen parametri.
Joitakin esimerkkejä iterableista ovat:
- Alkuperäiset tietotyypit - Lista, Tuple, Merkkijono, Sanakirja ja Aseta.
- Tiedosto-objektien ja objekteja voit määrittää kanssa
__iter__()
tai__getitem()__
menetelmällä.
Return value from join () -menetelmä
join()
Menetelmä palauttaa merkkijono on luotu yhdistämällä elementtejä iterable merkkijono erotin.
Jos iterable sisältää arvoja, jotka eivät ole merkkijonoja, se aiheuttaa TypeError
poikkeuksen.
Esimerkki 1: Liity () -menetelmän toiminta
# .join() with lists numList = ('1', '2', '3', '4') separator = ', ' print(separator.join(numList)) # .join() with tuples numTuple = ('1', '2', '3', '4') print(separator.join(numTuple)) s1 = 'abc' s2 = '123' # each element of s2 is separated by s1 # '1'+ 'abc'+ '2'+ 'abc'+ '3' print('s1.join(s2):', s1.join(s2)) # each element of s1 is separated by s2 # 'a'+ '123'+ 'b'+ '123'+ 'b' print('s2.join(s1):', s2.join(s1))
Tuotos
1, 2, 3, 4 1, 2, 3, 4 s1.liity (s2): 1abc2abc3 s2.liitä (s1): a123b123c
Esimerkki 2: Join () -menetelmä joukkoineen
# .join() with sets test = ('2', '1', '3') s = ', ' print(s.join(test)) test = ('Python', 'Java', 'Ruby') s = '->->' print(s.join(test))
Tuotos
2, 3, 1 Python -> -> Ruby -> -> Java
Huomaa: Joukko on järjestämätön kokoelma esineitä, joten saatat saada eri tuloksen (järjestys on satunnainen).
Esimerkki 3: Join () -menetelmä sanakirjoilla
# .join() with dictionaries test = ('mat': 1, 'that': 2) s = '->' # joins the keys only print(s.join(test)) test = (1: 'mat', 2: 'that') s = ', ' # this gives error since key isn't string print(s.join(test))
Tuotos
mat-> että Traceback (viimeisin puhelu viimeisin): Tiedosto "…", rivi 12, TypeError: jaksokohta 0: odotettu str-ilmentymä, int löydetty
join()
Menetelmä yrittää liittyä avaimia (ei-arvot) sanakirjaa merkkijono erotin.
Huomaa : Jos merkkijonon avain ei ole merkkijono, se aiheuttaa TypeError
poikkeuksen.