list_with_items = ["item1", "item2", "item3", "item4"] list_with_search_items = ["item2", "item3"] for item in list_with_search_items: if item in list_with_items: print(item)
вывод:
item2 item3
Это простой список подходов. Если ваши
list_with_items
иlist_with_search_items
имеют одинаковую длину, вы можете использовать подход набора, как здесь: Как я могу сравнить два списка в Python и вернуть совпадения
В VB.NET они идентичны. As New
вариант является каноническим.
В VB6 их семантика на самом деле отличалась (независимо формируют очевидное то, что VB6 не позволил присвоения в объявлениях): As New
вариант создал бы объект, который никогда не мог быть Nothing
. Скорее время выполнения гарантировало бы, что объект всегда правильно инициализировался перед каждым доступом к нему.
Эти операторы идентичны. Лично я предпочитаю "Тусклый x как Новый" синтаксис, потому что это более кратко. Нет никакой причины записи того же имени типа в том же операторе, когда это не имеет программного значения. Все, что это делает, заставляют Вас провести больше времени на клавиатуре :)
Я не парень VB, но насколько я могу сказать, что они эквивалентны. Согласно описанию MSDN оператора Dim:
Если Вы не указываете тип данных, переменная берет тип данных инициализатора. Если ни тип данных, ни инициализатор не присутствуют, по умолчанию, типом данных является Тип данных Object. При определении и типа данных и инициализатора тип данных инициализатора должен быть конвертируемым к типу данных.
Я не передам комментарий к предпочтению, поскольку я не использую VB (кроме тех случаев, когда ответ на операторы).