Jaka jest składnia wstawiania jednej listy do innej listy w Pythonie?
Podano dwie listy:
x = [1,2,3]
y = [4,5,6]
Jaka jest składnia do:
- wstawić
x
doy
tak, żey
teraz wygląda jak[1, 2, 3, [4, 5, 6]]
? - wstawić wszystkie elementy
x
doy
tak, żey
teraz wygląda jak[1, 2, 3, 4, 5, 6]
?
5 answers
Masz na myśli append
?
>>> x = [1,2,3]
>>> y = [4,5,6]
>>> x.append(y)
>>> x
[1, 2, 3, [4, 5, 6]]
Czy połączyć?
>>> x = [1,2,3]
>>> y = [4,5,6]
>>> x + y
[1, 2, 3, 4, 5, 6]
>>> x.extend(y)
>>> x
[1, 2, 3, 4, 5, 6]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-08 22:03:20
Pytanie nie wyjaśnia, co dokładnie chcesz osiągnąć.
List posiada metodę append
, która dodaje swój argument do listy:
>>> list_one = [1,2,3]
>>> list_two = [4,5,6]
>>> list_one.append(list_two)
>>> list_one
[1, 2, 3, [4, 5, 6]]
Istnieje również metoda extend
, która dodaje pozycje z listy, którą podajesz jako argument:
>>> list_one = [1,2,3]
>>> list_two = [4,5,6]
>>> list_one.extend(list_two)
>>> list_one
[1, 2, 3, 4, 5, 6]
I oczywiście istnieje metoda insert
, która działa podobnie do append
, ale pozwala określić punkt wstawiania:
>>> list_one.insert(2, list_two)
>>> list_one
[1, 2, [4, 5, 6], 3, 4, 5, 6]
Aby rozszerzyć listę w określonym punkcie wstawiania, możesz użyć listy krojenie (dzięki, @ florisla):
>>> l = [1, 2, 3, 4, 5]
>>> l[2:2] = ['a', 'b', 'c']
>>> l
[1, 2, 'a', 'b', 'c', 3, 4, 5]
Wycinanie listy jest dość elastyczne, ponieważ pozwala zastąpić zakres wpisów na liście zakresem wpisów z innej listy:
>>> l = [1, 2, 3, 4, 5]
>>> l[2:4] = ['a', 'b', 'c'][1:3]
>>> l
[1, 2, 'b', 'c', 5]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-16 03:52:09
foo = [1, 2, 3]
bar = [4, 5, 6]
foo.append(bar) --> [1, 2, 3, [4, 5, 6]]
foo.extend(bar) --> [1, 2, 3, 4, 5, 6]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-20 00:43:50
Możesz też po prostu to zrobić...
x += y
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-19 00:59:10
Jeśli chcesz dodać elementy z listy (list2) na koniec innej listy( list), możesz użyć metody list extend
list = [1, 2, 3]
list2 = [4, 5, 6]
list.extend(list2)
print list
[1, 2, 3, 4, 5, 6]
Lub jeśli chcesz połączyć dwie listy, możesz użyć znaku +
list3 = list + list2
print list3
[1, 2, 3, 4, 5, 6]
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-12 09:10:32