Python Списък с Append() с примери

⚡ Умно обобщение

Python list append() добавя един обект в края на съществуващ списък, увеличавайки дължината му с едно. Методът променя списъка на място, не връща стойност и приема цели числа, низове, числа с плаваща запетая или други обекти.

  • 🔘 Синтаксис: append() приема един аргумент и го вмъква в десния край на базовия списък.
  • ☑️ Върната стойност: append() променя списъка на място и връща None, а не нов списък.
  • Списъци със сгради: Цикъл for с append() или разбиране на списък запълва списък от нулата.
  • 🧪 Поведение на стека: append() действа като push, докато pop() премахва последния елемент (последен влязъл, първи излязъл).
  • 🛠️ добавяне срещу разширяване: append() добавя един обект; extend() добавя всеки елемент от итерабилен обект, като например кортеж.
  • 🤖 Работни процеси с изкуствен интелект: Циклите за машинно обучение използват append() за събиране на характеристики, прогнози и проби по време на обучение.

Python Добавяне на списък()

Какво представлява методът Append в Python?

Функцията за добавяне в Python помага за вмъкването на нови елементи в базов списък. Елементите се добавят от дясната страна на съществуващия списък. Методът append приема един аргумент и увеличава размера на списъка с 1.

Следващата диаграма илюстрира Pythonфункция за добавяне на:

Метод за добавяне в Python

Синтаксис:

List.append(object)

Забележка: Тук обектът може да бъде цяло число, низ или число с плаваща запетая. Функцията за добавяне не връща никаква стойност или списък. Вместо това, тя променя и разширява базовия списък.

Как да използвате функцията Append за създаване на a Python списък?

A Python списъкът може да бъде създаден и попълнен чрез два метода.

  1. При първия метод се използва списък с разбиране.
  2. Вторият метод използва функцията за добавяне и „за цикъл”. При този подход можете да създадете дефинирана от потребителя функция, която използва for цикли и добавяния.

Разгледайте примера по-долу, който използва втория метод:

import math
def calc_sqr_root(b_list):
    bop=[]
    for number in b_list:
        bop.append(math.sqrt(number))
    return bop
    
base_list=(4,9,100,25,36,49,81)
print("the Squared number list is as follows",base_list)
calc_sqr_root(base_list)
print("the numbers with square root in list is as follows",calc_sqr_root(base_list))

Изход:

the Squared number list is as follows (4, 9, 100, 25, 36, 49, 81)
the numbers with square root in the list is as follows [2.0, 3.0, 10.0, 5.0, 6.0, 7.0, 9.0]

Code Обяснение:

  • Използвайте квадратни скоби, за да дефинирате празен списък.
  • Цикълът for и функцията за добавяне се използват заедно под дефинирана от потребителя функция за дефиниране.
  • Попълва празен списък от нулата.
  • Той вмъква единични елементи един по един, като използва for цикъл за вмъкване на елементи.
  • Добавеният списък се използва за връщане на стойност за дефинираната от потребителя функция.

По-долу е даден пример, който използва първия метод:

Пример:

Python код:

import math
def calc_sqr_root(b_list):
    return [math.sqrt(number) for number in b_list]
base_list=(4,9,100,25,36,49,81)
print("the Squared number list is as follows",base_list)
calc_sqr_root(base_list)
print("the numbers with square root in list is as follows",calc_sqr_root(base_list))

Изход:

the Squared number list is as follows (4, 9, 100, 25, 36, 49, 81)
the numbers with a square root in the list are as follows [2.0, 3.0, 10.0, 5.0, 6.0, 7.0, 9.0]

Code Обяснение:

  • Можете да използвате разбирането на списъка като заместител, за да добавите функция Python за попълване на списък от нулата.
  • Помага при попълването на списък от самото начало.
  • Разбирането на списък под персонализирания списък помага за попълване на елементи в оригиналния списък.
  • Помага за оптимизиране на обработката на данни в сравнение с комбинацията от for цикъл с функцията за добавяне.

Как работи методът на добавяне?

Функцията за добавяне работи по следния начин:

  • Функцията Append в Python добавя обекта към основния списък.
  • Той приема обекта като аргумент и го поставя в следващото празно място.
  • Елементите от списъка са подредени и могат да бъдат достъпни с помощта на индекса.

По-долу има изображение, показващо индексите за елементите:

Методът на добавяне работи

Нека вземем примера по-долу, който добавя елементи към основния списък.

Python Пример:

baselist = ['P','Y','3','4.2','T']
print("The original list", baselist)
print("At index 0:", baselist[0])
print("At index 3:",baselist[3])
baselist.append('n')
print("The appended list", baselist)
print("At index 5 post append:",baselist[5])

Изход:

The original list ['P', 'Y', '3', '4.2', 'T']
At index 0: P
At index 3: 4.2
The appended list ['P', 'Y', '3', '4.2', 'T', 'n']
At index 5 post append: n

Code Обяснение:

  • Функцията Append добави тип обектни данни към запазеното място, налично в списъка.
  • Python списъците са итерируеми последователности, които могат да съдържат различни типове данни и обекти.

Функцията append добавя нов елемент на индекс 5, както е показано по-долу:

Методът на добавяне работи

Как да вмъкна елементи в списък без Append?

Програмистите могат да добавят елементи към списък чрез прилагане на процес от две стъпки, ако функцията за добавяне не се използва.

С помощта на функция Len можете да разберете дължината на последния елемент в списък. Присвоете празното пространство, идентифицирано като нов обект. Следният пример илюстрира концепцията:

Пример:

base_list=[2,4,6]
print("The list before append",base_list)
base_list[len(base_list):]=[10]
print("The list after append",base_list)

Изход:

The list before append [2, 4, 6]
The list after append [2, 4, 6, 10]

Как да дефинирам стека с помощта на функцията за добавяне?

Следните атрибути се отнасят за стека:

  • Стекът може да се дефинира като структура от данни, която поставя елементи един върху друг.
  • Елементите могат да се вмъкват или изтриват на принципа последен влязъл първи.
  • Обикновено стекът избутва елемент в края или в горната част на стека, докато изскачащата операция премахва елемент от стека.
  • Функцията за добавяне действа като операция за избутване на стека, докато списъкът по подразбиране има функция за изскачане, дефинирана за премахване на елементи.
  • Методът pop по подразбиране връща и премахва последния елемент от списъка, когато на функцията не са посочени аргументи.
  • Извежда грешка в индекса, когато списъкът стане празен.
  • Ако на функцията е предоставен целочислен аргумент, тя връща индекса на списъка.
  • Той премахва елемента, присъстващ в този индекс на списъка.

Нека разгледаме програма, в която функциите за добавяне и изскачане работят като операции за натискане и изскачане за дефинирания стек:

Пример:

Python код:

#initialize the stack
GGGstack = []
print("Adding item to the list",GGGstack.append(100))
print("Adding item to the list",GGGstack.append(2333))
print("Adding item to the list",GGGstack.append(50000))
print("the base list after adding elements,",GGGstack)
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())

Изход:

Adding item to the list None

Adding item to the list None

Adding item to the list None

the base list after adding elements, Stack([100, 2333, 50000])

base list after calling pop 50000

base list after calling pop 2333

base list after calling pop 100

Empty stack

base list after calling pop None

Code Обяснение:

  • Дефиниран е стек GGGStack
  • Елементите се добавят с помощта на метода за добавяне
  • Всеки елемент се изважда от оригиналния списък един по един.
  • Когато списъкът е празен, той извежда грешка в индекса.

Какво представлява методът extend в Python?

Функцията Extend позволява добавяне на нови елементи към итерируем списък. Примери за итерируеми списъци включват речници, кортежи и низове. Тези атрибути ви помагат да модифицирате елементите на итерируем списък.

Забележка: Тази функция не връща никаква стойност след нейното изпълнение.

Следва синтаксисът на функцията extend:

Синтаксис:

List.extend(iterable list)

Разлика между разширяване и добавяне в Python

Методите за добавяне и разширяване се различават по следните ключови начини:

  • Функцията за добавяне в Python добавя само един елемент към оригиналния списък, докато функцията за разширяване позволява добавянето на множество елементи.
  • Списъкът за добавяне приема само един аргумент, докато функцията за разширяване приема итерируем списък като кортежи и речници.

Въпроси и Отговори

append() добавя един обект в края на списък. insert() поставя елемент на избран индекс и измества следващите елементи надясно, така че го използвайте само когато позицията е от значение.

Добавянето се извършва за амортизирано време O(1). Python понякога преоразмерява масива и копира всеки елемент на цена O(n), но това е рядкост, така че средната цена на добавяне остава постоянна.

Методът append() връща None, защото редактира списъка на място. Записването на new = old.append(x) запазва None и губи списъка, честа грешка за начинаещи, която си струва да се избягва.

Предаването на списък към append() го добавя като един вложен елемент, така че [1, 2].append([3, 4]) връща [1, 2, [3, 4]]. Използвайте extend() или оператора plus, за да обедините елементите поотделно.

Да. Многократните извиквания на append() използват повторно предварително разпределеното пространство и остават почти постоянно време, докато операторът plus преизгражда целия списък на всяка стъпка, което прави append() много по-бърз в циклите.

В СPython, глобалното заключване на интерпретатора прави едно извикване на append() атомарно, така че добавянето към споделен списък от няколко нишки няма да го повреди. Многостъпковите последователности все още се нуждаят от изрично заключване.

Кодът за машинно обучение използва append(), за да събира характеристики, прогнози и пакетни проби вътре в цикли, преди да ги преобразува в NumPy масиви или тензори за AI обучителни тръбопроводи.

Да. GitHub Copilot и агентните AI асистенти генерират append() извиквания, цикли и comprehensions от кратък коментар и могат да рефакторират повтарящи се append() оператори в едно comprehension. Все пак тествайте резултата.

Обобщете тази публикация с: