Как узнать порядковый номер элемента

nikki4

22 / 16 / 7

Регистрация: 20.07.2010

Сообщений: 264

1

Как правильно узнать порядковый номер элемента в списке?

17.05.2020, 19:58. Показов 36539. Ответов 4

Метки нет (Все метки)


Сделал так, но подозреваю, что так не оптимально и лучше по другому.

Python
1
2
3
4
5
6
site = 'sezonmebeli.ru'
sites= ['Яндекс.Маркет', 'orel.regmarkets.ru', 'bestmebelik.ru', 'orel.goodster.ru', 'Ezakaz.ru', 'orel.yamart.ru', 'sezonmebeli.ru', 'onlinetrade.ru', 'm-lion.ru', 'mebelsort.ru', 'yavitrina.ru', 'qupi-stol.ru', '13chairs.ru', 'orel.lifemebel.ru', 'meb-mig.ru', 'LogoMebel.ru', 'mebelion.ru', 'rossiya.m-lion.ru']
 
for link in enumerate(sites):
    if site in link:
        print(link[0])

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



iSmokeJC

Йуный падаван

Эксперт PythonЭксперт Java

13762 / 8017 / 2455

Регистрация: 21.10.2017

Сообщений: 19,418

17.05.2020, 20:06

2

nikki4, тогда уж

Python
1
2
3
for index, link in enumerate(sites):
    if site == link:
        print(index)



1



22 / 16 / 7

Регистрация: 20.07.2010

Сообщений: 264

17.05.2020, 20:08

 [ТС]

3

спасибо, но я имел ввиду как-нибудь так нельзя?
print(site.position in sites)

наверняка же должна быть функция. но не нашел. а у меня аж 3 строчки кода с циклом. как-то заморочено



0



3888 / 2913 / 1059

Регистрация: 21.03.2016

Сообщений: 7,383

17.05.2020, 20:12

4

list.index(x, [start [, end]]) Возвращает положение первого элемента со значением x (при этом поиск ведется от start до end)



0



iSmokeJC

Йуный падаван

Эксперт PythonЭксперт Java

13762 / 8017 / 2455

Регистрация: 21.10.2017

Сообщений: 19,418

17.05.2020, 20:13

5

Лучший ответ Сообщение было отмечено nikki4 как решение

Решение

Python
1
2
if site in sites:
    print(sites.index(site))



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

17.05.2020, 20:13

5

Изучая программирование на Python, вы практически в самом начале знакомитесь со списками и различными операциями, которые можете выполнять над ними. В этой статье мы бы хотели рассказать об одной из таких операций над списками.

Представьте, что у вас есть список, состоящий из каких-то элементов, и вам нужно определить индекс элемента со значением x. Сегодня мы рассмотрим, как узнать индекс определенного элемента списка в Python.

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

Список в Python — это встроенный тип данных, который позволяет нам хранить множество различных значений, таких как числа, строки, объекты datetime и так далее.

Важно отметить, что списки упорядочены. Это означает, что последовательность, в которой мы храним значения, важна.

Индексирование списка начинаются с нуля и заканчивается на длине списка минус один. Для получения более подробной информации о списках вы можете обратиться к статье «Списки в Python: полное руководство для начинающих».

Итак, давайте посмотрим на пример списка:

fruits = ["apple", "orange","grapes","guava"]
print(type(fruits))
print(fruits[0])
print(fruits[1])
print(fruits[2])

# Результат:
# <class 'list'>
# apple
# orange
# grapes

Мы создали список из 4 элементов. Первый элемент в списке имеет нулевой индекс, второй элемент — индекс 1, третий элемент — индекс 2, а последний — 3.

Для списка получившихся фруктов fruits допустимыми индексами являются 0, 1, 2 и 3. При этом длина списка равна 4 (в списке 4 элемента). Индекс последнего элемента равен длине списка (4) минус один, то есть как раз 3.

[python_ad_block]

Как определить индекс элемента списка в Python

Итак, как же определить индекс элемента в Python? Давайте представим, что у нас есть элемент списка и нам нужно узнать индекс или позицию этого элемента. Сделать это можно следующим образом:

print(fruits.index('orange'))
# 1

print(fruits.index('guava'))
# 3

print(fruits.index('banana'))
# А здесь выскочит ValueError, потому что в списке нет значения banana

Списки Python предоставляют нам метод index(), с помощью которого можно получить индекс первого вхождения элемента в список, как это показано выше.

Познакомиться с другими методами списков можно в статье «Методы списков Python».

Мы также можем заметить, что метод index() вызовет ошибку VauleError, если мы попытаемся определить индекс элемента, которого нет в исходном списке.

Для получения более подробной информации о методе index() загляните в официальную документацию.

Базовый синтаксис метода index() выглядит так:

list_var.index(item),

где list_var — это исходный список,   item — искомый элемент.

Мы также можем указать подсписок для поиска, и синтаксис для этого будет выглядеть следующим образом:

list_var.index(item, start_index_of_sublist, end_index_of_sublist)

Здесь добавляются два аргумента: start_index_of_sublist и end_index_of_sublist. Тут всё просто. start_index_of_sublist обозначает, с какого элемента списка мы хотим начать поиск, а end_index_of_sublist, соответственно, на каком элементе (не включительно) мы хотим закончить.

Чтобы проиллюстрировать это для лучшего понимания, давайте рассмотрим следующий пример.

Предположим, у нас есть список book_shelf_genres, где индекс означает номер полки (индексация начинается с нуля). У нас много полок, среди них есть и полки с учебниками по математике.

Мы хотим узнать, где стоят учебники по математике, но не вообще, а после четвертой полки. Для этого напишем следующую программу:

book_shelf_genres = ["Fiction", "Math", "Non-fiction", "History", "Math", "Coding", "Cooking", "Math"]
print(book_shelf_genres.index("Math"))
# Результат:
# 1

Здесь мы видим проблему. Использование просто метода index() без дополнительных аргументов выдаст первое вхождение элемента в список, но мы хотим знать индекс значения «Math» после полки 4.

Для этого мы используем метод index() и указываем подсписок для поиска. Подсписок начинается с индекса 5 до конца списка book_shelf_genres, как это показано во фрагменте кода ниже:

print(book_shelf_genres.index("Math", 5))
# Результат:
# 7

Обратите внимание, что указывать конечный индекс подсписка необязательно.

Чтобы вывести индекс элемента «Math» после полки номер 1 и перед полкой номер 5, мы просто напишем следующее:

print(book_shelf_genres.index("Math", 2, 5))
# Результат:
# 4

Как найти индексы всех вхождений элемента в списке

А что, если искомое значение встречается в списке несколько раз и мы хотим узнать индексы всех этих элементов? Метод index() выдаст нам индекс только первого вхождения.

В этом случае мы можем использовать генератор списков:

book_shelf_genres = ["Fiction", "Math", "Non-fiction", "History", "Math", "Coding", 
                     "Cooking", "Math"]

indices = [i for i in range(0, len(book_shelf_genres)) if book_shelf_genres[i]=="Math"]
print(indices)

# Результат:
# [1, 4, 7]

В этом фрагменте кода мы перебираем индексы списка в цикле for и при помощи range(). Далее мы проверяем значение элемента под каждым индексом на равенство «Math«. Если значение элемента — «Math«, мы сохраняем значение индекса в списке.

Все это делается при помощи генератора списка, который позволяет нам перебирать список и выполнять некоторые операции с его элементами. В нашем случае мы принимаем решения на основе значения элемента списка, а в итоге создаем новый список.

Подробнее про генераторы списков можно почитать в статье «Генераторы списков в Python для начинающих».

Благодаря генератору мы получили все номера полок, на которых стоят книги по математике.

Как найти индекс элемента в списке списков

Теперь представьте ситуацию, что у вас есть вложенный список, то есть список, состоящий из других списков. И ваша задача — определить индекс искомого элемента для каждого из подсписков. Сделать это можно следующим образом:

programming_languages = [["C","C++","Java"],
                         ["Python","Rust","R"],
                         ["JavaScript","Prolog","Python"]]

indices = [(i, x.index("Python")) for i, x in enumerate(programming_languages) if "Python" in x]
print(indices)

# Результат:
# [(1, 0), (2, 2)]

Здесь мы используем генератор списков и метод index(), чтобы найти индексы элементов со значением «Python» в каждом из имеющихся подсписков. Что же делает этот код?

Мы передаем список programming_languages ​​методу enumerate(), который просматривает каждый элемент в списке и возвращает кортеж, содержащий индекс и значение элемента списка.

Каждый элемент в списке programming_languages ​​также является списком. Оператор in проверяет, присутствует ли элемент «Python» в этом списке. Если да — мы сохраняем индекс подсписка и индекс элемента «Python» внутри подсписка в виде кортежа.

Результатом программы, как вы можете видеть, является список кортежей. Первый элемент кортежа — индекс подсписка, а второй — индекс искомого элемента в этом подсписке.

Таким образом, (1,0) означает, что подсписок с индексом 1 списка programming_languages ​​имеет элемент «Python», который расположен по индексу 0. То есть, говоря простыми словами, второй подсписок содержит искомый элемент и этот элемент стоит на первом месте. Не забываем, что в Python индексация идет с нуля.

Как искать индекс элемента, которого, возможно, нет в списке

Бывает, нужно получить индекс элемента, но мы не уверены, есть ли он в списке.

Если попытаться получить индекс элемента, которого нет в списке, метод index() вызовет ошибку ValueError. При отсутствии обработки исключений ValueError вызовет аварийное завершение программы. Такой исход явно не является хорошим и с ним нужно что-то сделать.

Вот два способа, с помощью которых мы можем избежать такой ситуации:

books = ["Cracking the Coding Interview", "Clean Code", "The Pragmatic Programmer"]
ind = books.index("The Pragmatic Programmer") if "The Pragmatic Programmer" in books else -1
print(ind)

# Результат:
# 2

Один из способов — проверить с помощью оператора in, есть ли элемент в списке. Оператор in имеет следующий синтаксис:

var in iterable

Итерируемый объект — iterable — может быть списком, кортежем, множеством, строкой или словарем. Если var существует как элемент в iterable, оператор in возвращает значение True. В противном случае он возвращает False.

Это идеально подходит для решения нашей проблемы. Мы просто проверим, есть ли элемент в списке, и вызовем метод index() только если элемент существует. Это гарантирует, что метод index() не вызовет нам ошибку ValueError.

Но если мы не хотим тратить время на проверку наличия элемента в списке (это особенно актуально для больших списков), мы можем обработать ValueError следующим образом:

books = ["Cracking the Coding Interview", "Clean Code", "The Pragmatic Programmer"]
try:
    ind = books.index("Design Patterns")
except ValueError:
    ind = -1
print(ind)

# Результат:
# -1

Здесь мы применили конструкцию try-except для обработки ошибок. Программа попытается выполнить блок, стоящий после слова try. Если это приведет к ошибке ValueError, то она выполнит блок после ключевого слова except. Подробнее про обработку исключений с помощью try-except можно почитать в статье «Обрабатываем исключения в Python: try и except».

Заключение

Итак, мы разобрали как определить индекс элемента списка в Python. Теперь вы знаете, как это сделать с помощью метода index() и генератора списков.

Мы также разобрали, как использовать метод index() для вложенных списков и как найти каждое вхождение элемента в списке. Кроме того, мы рассмотрели ситуацию, когда нужно найти индекс элемента, которого, возможно, нет в списке.

Мы надеемся, что данная статья была для вас полезной. Успехов в написании кода!

Перевод статьи «Python Index – How to Find the Index of an Element in a List».

Порядковый номер элемента

Порядковый номер элемента

Заря́довое число́ атомного ядра (синонимы: атомный номер, атомное число, порядковый номер химического элемента) — количество протонов в атомном ядре. Зарядовое число равно заряду ядра в единицах элементарного заряда и одновременно равно порядковому номеру соответствующего ядру химического элемента в таблице Менделеева.

Термин «атомный» или «порядковый» номер обычно используется в атомной физике и химии, тогда как эквивалентный термин «зарядовое число» — в физике ядра. В неионизированном атоме количество электронов в электронных оболочках совпадает с зарядовым числом.

Зарядовое число обычно обозначается буквой Z. Ядра с одинаковым зарядовым числом, но различным массовым числом A (которое равно сумме числа протонов Z и числа нейтронов N) являются различными изотопами одного и того же химического элемента, поскольку именно заряд ядра определяет структуру электронной оболочки атома и, следовательно, его химические свойства.

Wikimedia Foundation.
2010.

Смотреть что такое «Порядковый номер элемента» в других словарях:

  • порядковый номер элемента — атомное число …   Cловарь химических синонимов I

  • ПОРЯДКОВЫЙ НОМЕР — элемента, то же, что (см. АТОМНЫЙ НОМЕР). Физический энциклопедический словарь. М.: Советская энциклопедия. Главный редактор А. М. Прохоров. 1983. ПОРЯДКОВЫЙ НОМЕР …   Физическая энциклопедия

  • Порядковый номер — Термин, используемый, где необходима упорядоченость информации; Может означать: Порядковый номер элемента в таблице Менделеева, равный зарядовому числу. Порядковый номер единицы …   Википедия

  • порядковый номер порождающего элемента — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN child sequence number …   Справочник технического переводчика

  • ПОРЯДКОВЫЙ НОМЕР — химического элемента то же, что атомный номер …   Большой Энциклопедический словарь

  • ПОРЯДКОВЫЙ НОМЕР — хим. элемента то же, что (см.) …   Большая политехническая энциклопедия

  • Порядковый номер —         номер места, занимаемого химическим элементом в периодической системе элементов (См. Периодическая система элементов) Д. И. Менделеева; то же, что Атомный номер элемента …   Большая советская энциклопедия

  • Порядковый номер химического элемента — Зарядовое число атомного ядра (синонимы: атомный номер, атомное число, порядковый номер химического элемента) количество протонов в атомном ядре. Зарядовое число равно заряду ядра в единицах элементарного заряда и одновременно равно порядковому… …   Википедия

  • порядковый номер — химического элемента, то же, что атомный номер. * * * ПОРЯДКОВЫЙ НОМЕР ПОРЯДКОВЫЙ НОМЕР химического элемента, то же, что атомный номер (см. АТОМНЫЙ НОМЕР) …   Энциклопедический словарь

  • ПОРЯДКОВЫЙ НОМЕР — хим. элемента, то же, что атомный номер …   Естествознание. Энциклопедический словарь

Перейти к содержанию

Найти наибольший элемент и его порядковый номер в массиве

Просмотров 14.6к. Обновлено 15 октября 2021

Заполнить одномерный массив случайными числами. Найти и вывести на экран наибольший его элемент и порядковый номер этого элемента.

Заполнение массива и поиск наибольшего элемента можно выполнять в одном цикле.

Поскольку необходимо найти не только максимальный элемент, но и его индекс, то лучше искать индекс, так как по нему всегда можно получить значение из массива. Конечно, при поиске можно сохранять и индекс, и элемент в двух разных переменных. Однако этого делать не обязательно. До цикла присвоим переменной, в которой будет храниться индекс максимального элемента, значение 1. Это значит, предполагается, что максимальный элемент находится в первой ячейке массива.

Тело цикла будет состоять из следующих действий:

  1. Сгенерировать случайное число и записать его в очередную ячейку массива.
  2. Вывести полученное число на экран.
  3. Если это число больше, чем то, что хранится под индексом, записанным в переменную-максимум, то присвоить этой переменной текущий индекс (не само число!).

После того, как индекс наибольшего элемента будет найден, вывести его на экран. Чтобы вывести элемент по данному индексу, надо использовать выражение извлечения элемента из массива. Например, если max — это индекс, а arr — массив, то выражение будет таким: arr[max].

Pascal

найти максимальный элемент массива паскаль


const N = 10;
var
arr: array[1..N] of integer;
i, max: byte;
begin
randomize;
max := 1;
for i:=1 to N do begin
arr[i] := random(100);
write(arr[i], ' ');
if arr[max] < arr[i] then
max := i;
end;
writeln;
writeln('arr[',max,'] = ',arr[max]);
end.



64 26 99 37 57 64 6 21 48 19
arr[3] = 99

Язык Си


#include < stdio.h>
#define N 10
main() {
int arr[N], i, mx;
srand(time(NULL));
mx = 0;
for (i=0; i< N; i++) {
arr[i] = rand() % 100;
printf("%d ", arr[i]);
if (arr[i] > arr[mx])
mx = i;
}
printf("narr[%d] = %dn", mx, arr[mx]);
}



75 46 7 39 11 29 34 77 86 25
arr[8] = 86

Python

найти максимальный элемент массива python


from random import random
N = 10
arr = [0] * N
mx = 0
for i in range(N):
arr[i] = random() * 100
print("%.2f" % arr[i], end='; ')
if arr[i] > arr[mx]:
mx = i
print("narr[%d] = %.2f" % (mx, arr[mx]))



73.83; 16.23; 30.18; 27.41; 94.27; 46.27; 66.17; 61.07; 18.89; 61.16;
arr[4] = 94.27

КуМир


алг
нач
цел N = 10
целтаб arr[1:N]
цел mx, i
mx := 1
нц для i от 1 до N
arr[i] := irnd(100)
вывод arr[i], " "
если arr[mx] < arr[i] то
mx := i
все
кц
вывод нс,"arr[",mx,"] = ",arr[mx]
кон



57 78 14 96 76 9 19 36 45 54
arr[4] = 96

Basic-256


decimal 1
N = 10
dim arr(N)
mx = 0
for i=0 to N-1
arr[i] = rand * 100
print arr[i] + "; ";
if arr[i] > arr[mx] then mx = i
next i
print
print "Номер элемента: " + mx
print "Значение элемента: " + arr[mx]



21.9; 58.4; 24.4; 72.6; 88.5; 65.2; 56.6; 65.1; 72.6; 40.4;
Номер элемента: 4
Значение элемента: 88.5

  • Как узнать свой номер если забыл
  • Как узнать порт телефона
  • Как узнать с чьего номера звонили
  • Как узнать свой номер ерип беларусбанк
  • Как узнать пользователя по номеру телефона