Как удалить элемент из списка по индексу?

Это зависит от того, как структурирован фрагмент. Если вы можете использовать некоторые из методов статического элемента класса B и фрагмент объекта TextView static, вы можете вызвать метод непосредственно в классе фрагментов A. Это лучше, чем слушатель, когда метод выполняется мгновенно, необходимо иметь дополнительную задачу, которая выполняет прослушивание в течение всего действия. См. Пример ниже:

Fragment_class_B.setmyText(String yourstring);

На фрагменте B вы можете иметь метод, определенный как:

public static void setmyText(final String string) {
myTextView.setText(string);
}

Просто не забудьте указать myTextView как статический на фрагменте B, и правильно импортировать класс Fragment B на фрагмент A.

Недавно была выполнена процедура моего проекта, и это сработало. Надеюсь, что это помогло.

1258
задан martineau 14 June 2019 в 18:25
поделиться

3 ответа

Используйте del и определите индекс элемента, который Вы хотите удалить:

>>> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> del a[-1]
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8]

Также части поддержек:

>>> del a[2:4]
>>> a
[0, 1, 4, 5, 6, 7, 8, 9]

Здесь раздел из учебного руководства.

1513
ответ дан Neil Chowdhury 15 June 2019 в 04:25
поделиться

Вы, вероятно, хотите pop:

a = ['a', 'b', 'c', 'd']
a.pop(1)

# now a is ['a', 'c', 'd']

По умолчанию, pop без любых аргументов удаляет последний объект:

a = ['a', 'b', 'c', 'd']
a.pop()

# now a is ['a', 'b', 'c']
585
ответ дан Jarret Hardie 15 June 2019 в 04:25
поделиться

Было уже упомянуто, как удалить единственный элемент из списка и который способствует различным методам, имеют. Обратите внимание, однако, что, удаляя приблизительно элементы имеют некоторый потенциал для ошибок:

>>> l = [0,1,2,3,4,5,6,7,8,9]
>>> indices=[3,7]
>>> for i in indices:
...     del l[i]
... 
>>> l
[0, 1, 2, 4, 5, 6, 7, 9]

Элементы 3 и 8 (не 3 и 7) исходного списка были удалены (поскольку список был сокращен во время цикла), который, возможно, не был намерением. Если Вы хотите безопасно удалить несколько индексов, необходимо вместо этого удалить элементы с самым высоким индексом сначала, например, как это:

>>> l = [0,1,2,3,4,5,6,7,8,9]
>>> indices=[3,7]
>>> for i in sorted(indices, reverse=True):
...     del l[i]
... 
>>> l
[0, 1, 2, 4, 5, 6, 8, 9]
3
ответ дан 19 December 2019 в 20:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: