V tomto tématu probereme, jak můžeme spojit dva nebo více seznamů s různými funkcemi Pythonu. Než si projdeme pojmy, pojďme si krátce představit Python List. A Seznam Pythonu je kolekce více položek, které jsou seskupeny pod stejným názvem. Může ukládat různé datové typy (integer, string, float, atd.) položky uvnitř hranaté závorky [], která je oddělena čárkou (,).
Program pro tisk seznamu Python
List.py
# list of characters List1 = ['A', 'B', 'C', 'D', 'E'] # list of integers List2 = [1, 2, 3, 4, 5,] # mixed lists List3 = ['A', 1, 'C', 'E', 5, 8] print (' Display the List1 ', List1) print (' Display the List2 ', List2) print (' Display the List3 ', List3)
Výstup
Display the List1 ['A', 'B', 'C', 'D', 'E'] Display the List2 [1, 2, 3, 4, 5] Display the List3 ['A', 1, 'C', 'E', 5, 8]
Když spojíme dva nebo více seznamů dohromady v a Krajta program, dává spojené seznamy. A tento proces se nazývá skládání nebo spojování seznamů.
Pojďme diskutovat o různých způsobech, jak spojit dva nebo více seznamů v Pythonu:
- Spojení seznamů v Pythonu pomocí funkce join() a oddělovačů
- Připojte se k seznamu v Pythonu pomocí funkce join() bez oddělovačů
- Spojte dva seznamy celých čísel v Pythonu pomocí funkce map().
- Spojte dva seznamy v Pythonu pomocí cyklu for a funkce append().
- Spojte více seznamů v Pythonu pomocí metody itertools.chain().
- Spojte dva seznamy v Pythonu pomocí operátoru (+) plus
- Spojte dva seznamy v Pythonu pomocí operátoru násobení (*) nebo hvězdičky
- Spojte dva seznamy v Pythonu pomocí funkce extend().
Spojení seznamů v Pythonu pomocí funkce join().
A připojit se() Funkce se používá k připojení iterovatelného seznamu k jinému seznamu, oddělenému určenými oddělovači, jako je čárka, symboly, pomlčka atd.
Syntax
str_name.join( iterable)
str_name: Je to název oddělovače, který odděluje iterovatelný seznam.
iterovatelné: Je to seznam, který obsahuje sadu prvků a spojení s oddělovačem.
Návratová hodnota: Vrátí zřetězený seznam, který je oddělen zadanými oddělovači.
Poznámka: Pokud iterovatelný seznam obsahuje nějaké neřetězcové hodnoty nebo položky, vyvolá výjimku TypeError.
Program pro spojení dvou seznamů pomocí funkce join() a oddělovače
Join.py
List1 = [ 'Apple', 'Orange', 'Banana', 'Mango', 'Grapes' ] Str2 = ', ' # It is the comma delimiter # use join() function to join List1 with the ' . ' delimiter Str2 = Str2.join( List1) # print the join list print (' Display the concatenated List1 using join() function and delimiter', Str2) List2 = [ 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday' ] Str3 = ' - ' # It is the hyphen delimiter # use join() function to join List2 with the ' - ' delimiters Str3 = Str3.join( List2) # print the join list print (' Display the concatenated List2 using join() function and delimiter', Str3)
Výstup
Display the concatenated List1 using join() function and delimiter Apple, Orange, Banana, Mango, Grapes Display the concatenated List2 using join() function and delimiter Sunday - Monday - Tuesday - Wednesday - Thursday
Program pro připojení k seznamu bez použití oddělovače
Prog.py
# declare a python list Lt1 = [ 'j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't' ] print ( ' Display the elements of the List L1 ' , Lt1) L2 = ' ' # declare any empty string without defining any delimiter Ret = L2.join( Lt1) # use join method to join L1 list with L2 print ( ' Display the List without using delimiters', Ret)
Výstup
Display the elements of the List L1 ['j', 'a', 'v', 'a', 't', 'p', 'o', 'i', 'n', 't'] Display the List without using delimiters j a v a t p o i n t
Spojte seznam dvou celých čísel pomocí funkce map().
Seznam celých čísel: Shromažďuje všechna celá čísla v seznamu zvaném celočíselný seznam a v Pythonu nemůžeme spojit dva celočíselné seznamy pomocí funkce join(). Proto používáme a mapa() funkce, která převádí celočíselný seznam na řetězec. Poté pomocí funkce join() spojíme výsledky funkce map() s příslušnými oddělovači.
Syntax:
map(str, list_name)
Ve výše uvedené syntaxi má funkce map() dva parametry, list_name a str. Kde název_seznamu je název seznamu celých čísel a str představuje řetězec. Funkce map() převede název_seznamu na řetězec (str).
java elseif
Program pro použití funkce map() a join() v seznamu
Vytvořme program, který převede daný seznam celých čísel na řetězec pomocí funkce map() a poté funkci join() pro připojení k seznamu.
Convert.py
lt = [1, 2, 3, 4, 5] # use map() function to convert integer list into string list_map = map(str, lt) lt2 = ', ' # use join() function to join lists and delimiter comma (,) res = lt2.join (list_map) print (' Display the concatenated integers list using map() and join() function ', res)
Výstup
Display the concatenated integers list using map() and join() function 1, 2, 3, 4, 5
Program pro spojení dvou seznamů v Pythonu pomocí funkce for loop a append().
An připojit Funkce () se používá k sekvenčnímu přidání nebo spojení každého prvku iterovatelného seznamu na konec jiného seznamu pomocí cyklu for. Vytvořme jednoduchý program pro přidání prvků seznamu na konec jiného seznamu pomocí funkce append().
Append.py
List1 = [1, 2, 3, 4, 5] # declare List1 List2 = [5, 6, 7, 8, 9, 10] # declare List2 print (' Given List1 ', List1) print (' Given List2 ', List2) # use for loop to iterate each element of Lt1 to l2 for i in List2: List1.append(i) # use append() function to insert each elements at the end of Lt1 print (' Display concatenation list using append() function ', List1)
Výstup
Given List1 [1, 2, 3, 4, 5] Given List2 [5, 6, 7, 8, 9, 10] Display concatenation list using append() function [1, 2, 3, 4, 5, 5, 6, 7, 8, 9, 10]
Program pro spojení více seznamů pomocí metody itertools.chain().
Pojďme vytvořit jednoduchý program v Pythonu pro zřetězení více seznamů pomocí řetěz () metodou importem itertools balík.
New.py
# use Python itertools.chain() method to join two list import itertools # declare different lists a = [1, 2, 3, 4, 5] b = [6, 7, 8, 9, 10] c = [11, 12, 13, 14, 15] print (' Display the first list ', a) print (' Display the second list ', b) print (' Display the third list ', c) # use itertools.chain() method to join the list result = list (itertools.chain (a, b, c)) # pass the result variable in str() function to return the concatenated lists print (' Concatenated list in python using itertools.chain() method ', str (result))
Výstup
Display the first list [1, 2, 3, 4, 5] Display the second list [6, 7, 8, 9, 10] Display the third list [11, 12, 13, 14, 15] Concatenated list in python using itertools.chain() method [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
Program pro spojení dvou seznamů pomocí operátoru +
Podívejme se na příklad spojení dvou seznamů v Pythonu pomocí operátoru (+) plus.
Mypro.py
# Create a program to join two lists in Python using the '+' operator # declare two lists of characters list1 = [ 'A', 'B', 'C', 'D', 'E'] list2 = [ 'F', 'G', 'H', 'I', 'J'] # join two characters lists using '+' operator lt_sum1 = list1 + list2 # declares two lists of integers list3 = [ '1', '2', '3', '4', '5'] list4 = [ '6', '7', '8', '9', '10'] # join two integers lists using '+' operator lt_sum2 = list3 + list4 # display the concatenation list print (' Join two list of characters in Python using + operator: ', str(lt_sum1)) # display the concatenation list print (' Join two list of integers in Python using + operator: ', str(lt_sum2))
Výstup
Join two list of characters in Python using + operator: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] Join two list of integers in Python using + operator: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
Program pro spojení dvou seznamů pomocí operátoru násobení (*).
Zvažte příklad spojení dvou seznamů v Pythonu pomocí operátoru *.
pole.z javy
Mypro2.py
# declare two lists of characters List1 = [ 'A', 'B', 'C', 'D', 'E'] List2 = [ 'F', 'G', 'H', 'I', 'J'] print (' Display character List1 ', List1) print (' Display character List2 ', List2) # join two characters lists using '*' operator lt_sum1 = [*List1, *List2] # declares two lists of integers List3 = [ 1, 2, 3, 4, 5] List4 = [ 6, 7, 8, 9, 10] print (' Display integer List3 ', List3) print (' Display integer List4 ', List4) # join two integers lists using '*' operator lt_sum2 = [*List3, *List4] # display the concatenation list print (' Join two characters list in Python using * operator: '+ str(lt_sum1)) # display the concatenation list print (' Join two integers list in Python using * operator: '+ str(lt_sum2))
Výstup
Display integer List3 [1, 2, 3, 4, 5] Display integer List4 [6, 7, 8, 9, 10] Join two characters list in Python using * operator: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] Join two integers list in Python using * operator: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Program pro spojení dvou seznamů v Pythonu pomocí metody extend().
Pojďme napsat jednoduchý program pro spojení dvou seznamů pomocí metody extend() v Pythonu.
Prog.py
# takes two integers lists List1 = [5, 10, 5] List2 = [ 2, 4, 6, 8] print (' Display the List1 ', List1) print (' Display the List1 ', List2) # takes two string lists List3 = [ 'RED', 'BLUE', 'BLACK'] List4 = [ 'BROWN', 'PURPLE', 'GREY' ] print (' Display the List3 ', List3) print (' Display the List4 ', List4) # use extend() method to join two lists List1.extend(List2) List3.extend(List4) # print concatenation lists print( ' Adding two lists of integers in Python using the extend() function: ', str(List1)) print( ' Adding two lists of strings in Python using the extend() function: ', str(List3))
Výstup
Display the List1 [5, 10, 5] Display the List1 [2, 4, 6, 8] Display the List3 ['RED', 'BLUE', 'BLACK'] Display the List4 ['BROWN', 'PURPLE', 'GREY'] Adding two lists of integers in Python using the extend() function: [5, 10, 5, 2, 4, 6, 8] Adding two lists of strings in Python using the extend() function: ['RED', 'BLUE', 'BLACK', 'BROWN', 'PURPLE', 'GREY']