В этой статье мы обсудим, как искать список объектов в Python.
Поиск определенного объекта или группы объектов может выполняться итерацией по списку.
Синтаксис:
class_name.object_name
где,
class_name — это имя класса
object_name — это имя объекта
Пример 1
Создайте класс Car со следующими атрибутами и выполните операцию поиска, которая вернет автомобили с ценой менее 10 Lakhs (10,00,000/-).
Атрибуты:
- Струнная компания
- Строка modelName
- Внутренняя цена
- Int seatCapacity
Python3
class
Car():
# constructor
def
__init__(
self
, company, modelName, price, seatingCapacity):
self
.company
=
company
self
.modelName
=
modelName
self
.price
=
price
self
.seatingCapacity
=
seatingCapacity
# list of car objects
carsList
=
[Car(
'Honda'
,
'Jazz'
,
900000
,
5
),
Car(
'Suziki'
,
'Alto'
,
450000
,
4
),
Car(
'BMW'
,
'X5'
,
9000000
,
5
)]
# cars with price less than 10 Lakhs
economicalCars
=
[car
for
car
in
carsList
if
car.price <
=
1000000
]
# print those cars
for
car
in
economicalCars:
(car.company
+
'--'
+
car.modelName)
Вывод
Honda--Jazz Suziki--Alto
Пример 2
Используйте тот же класс автомобилей и найдите автомобили, вмещающие 4 человека.
Python3
class
Car():
# constructor
def
__init__(
self
, company, modelName, price, seatingCapacity):
self
.company
=
company
self
.modelName
=
modelName
self
.price
=
price
self
.seatingCapacity
=
seatingCapacity
# list of car objects
carsList
=
[Car(
'Honda'
,
'Jazz'
,
900000
,
5
),
Car(
'Suziki'
,
'Alto'
,
450000
,
4
),
Car(
'BMW'
,
'X5'
,
9000000
,
5
)]
# cars having seating capacity 4
smallCars
=
[car
for
car
in
carsList
if
car.seatingCapacity
=
=
4
]
# print those cars
for
car
in
smallCars:
(car.company
+
'--'
+
car.modelName
+
'--'
+
str
(car.seatingCapacity))
Вывод
Suziki--Alto--4
Пример 3
Используйте автомобиль того же класса, найдите служебные автомобили BMW и верните их.
Python3
class
Car():
# constructor
def
__init__(
self
, company, modelName, price, seatingCapacity):
self
.company
=
company
self
.modelName
=
modelName
self
.price
=
price
self
.seatingCapacity
=
seatingCapacity
# list of car objects
carsList
=
[Car(
'Honda'
,
'Jazz'
,
900000
,
5
),
Car(
'Suziki'
,
'Alto'
,
450000
,
4
),
Car(
'BMW'
,
'X5'
,
9000000
,
5
)]
# bmw cars
BMW_Cars
=
[car
for
car
in
carsList
if
car.company
=
=
'BMW'
]
# print those cars
for
car
in
BMW_Cars:
(car.company
+
'--'
+
car.modelName
+
'--'
+
str
(car.price)
+
'--'
+
str
(car.seatingCapacity))
Вывод
BMW—X5—9000000—5