Metóda join () string vráti reťazec spojením všetkých prvkov iterovateľného súboru, oddelených oddeľovačom reťazcov.
Táto join()
metóda poskytuje flexibilný spôsob vytvárania reťazcov z opakovateľných objektov. Spojí každý prvok iterovateľnej položky (napríklad zoznam, reťazec a n-ticu) oddeľovačom reťazcov (reťazec, na ktorom sa join()
metóda volá) a vráti zreťazený reťazec.
Syntax join()
metódy je:
string.join (opakovateľné)
Parametre pre metódu join ()
join()
Metóda trvá iterable (objekty schopné vrátiť svojich členov jeden po druhom), ako jeho parameter.
Medzi príklady opakovateľných položiek patria:
- Natívne dátové typy - zoznam, n-tica, reťazec, slovník a sada.
- Uložte objekty a objekty, ktoré definujete pomocou metódy
__iter__()
alebo__getitem()__
.
Návratová hodnota z metódy join ()
join()
Metóda vracia reťazec vytvorený spojením prvky danej iterable oddeľovač reťazca.
Ak iterácia obsahuje akékoľvek hodnoty bez reťazcov, vyvolá to TypeError
výnimku.
Príklad 1: Fungovanie metódy join ()
# .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))
Výkon
1, 2, 3, 4 1, 2, 3, 4 s1.join (s2): 1abc2abc3 s2.join (s1): a123b123c
Príklad 2: Metóda join () s množinami
# .join() with sets test = ('2', '1', '3') s = ', ' print(s.join(test)) test = ('Python', 'Java', 'Ruby') s = '->->' print(s.join(test))
Výkon
2, 3, 1 Python -> -> Ruby -> -> Java
Poznámka: Sada je neusporiadaná kolekcia položiek, takže môžete získať rôzny výstup (poradie je náhodné).
Príklad 3: Metóda join () so slovníkmi
# .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))
Výkon
mat-> that Traceback (posledný hovor posledný): Súbor "…", riadok 12, v TypeError: sekvenčná položka 0: očakávaná str inštancia, int nájdený
join()
Metóda pokúsi pripojiť kľúča (nie hodnôt) slovníka s odlučovačom reťazca.
Poznámka : Ak kľúč reťazca nie je reťazec, vyvolá to TypeError
výnimku.