Xóa phần tử khỏi danh sách Python

Viết chương trình Python để xóa danh sách con khỏi danh sách danh sách đã cho có chứa phần tử nằm ngoài phạm vi đã cho

Giải pháp mẫu

Mã Python

#Source bit.ly/33MAeHe
def remove_list_range(input_list, left_range, rigth_range):
   result = [i for i in input_list if (min(i)>=left_range and max(i)<=rigth_range)]
   return result
list1 = [[2], [0], [1, 2, 3], [0, 1, 2, 3, 6, 7], [9, 11], [13, 14, 15, 17]]
left_range = 13
rigth_range = 17
print("Original list:")
print(list1)
print("\nAfter removing sublists from a given list of lists, which contains an element outside the given range:")
print(remove_list_range(list1, left_range, rigth_range))

Đầu ra mẫu

Original list:
[[2], [0], [1, 2, 3], [0, 1, 2, 3, 6, 7], [9, 11], [13, 14, 15, 17]]

After removing sublists from a given list of lists, which contains an element outside the given range:
[[13, 14, 15, 17]]

Trình bày bằng hình ảnh

Xóa phần tử khỏi danh sách Python

Sơ đồ

Xóa phần tử khỏi danh sách Python

Trực quan hóa việc thực thi mã Python

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên


Trình chỉnh sửa mã Python

Có một cách khác để giải quyết giải pháp này?

Trước. Viết chương trình Python để sắp xếp một danh sách các danh sách đã cho theo độ dài và giá trị
Kế tiếp. Viết chương trình Python để xáo trộn các chữ cái của chuỗi trong một danh sách đã cho

Mức độ khó của bài tập này là gì?

Dễ dàng trung bình khó

Kiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource



Theo dõi chúng tôi trên FacebookTwitter để cập nhật thông tin mới nhất.

con trăn. Lời khuyên trong ngày

Quản lý bộ nhớ

getrefcount sẽ hiển thị số lần một đối tượng được sử dụng trong bộ nhớ. Đó là một công cụ tuyệt vời có thể được sử dụng để quản lý bộ nhớ trong bất kỳ chương trình nào và nó cũng rất tiện lợi

Getrefcount sẽ tính toán mức sử dụng đối tượng ở mức ByteCode thấp để nó có thể có xu hướng cao hơn dự kiến. Ví dụ: khi bạn in một giá trị, giá trị đó thực sự được xử lý nhiều lần ở chế độ nền bên trong chính hàm in và getrefcount cũng đếm phiên bản khi giá trị đó được gọi bằng chính phương thức getrefcount. Vì vậy, thật an toàn khi nói rằng số lượng thực tế sẽ luôn cao hơn ít nhất 1 lần so với dự kiến

Mặc dù danh sách không phải là cấu trúc dữ liệu hiệu quả nhất nếu bạn thực hiện nhiều thao tác xóa từ giữa, nhưng chắc chắn có những cách tốt để hoàn thành nhiệm vụ. Phương pháp remove() tích hợp nên là lựa chọn đầu tiên của bạn. Hãy đi qua một số ví dụ

Xóa phần tử trong danh sách Python theo giá trị

primes = [2, 3, 5, 5, 7, 11]

primes.remove(5)

print(primes)
# [2, 3, 5, 7, 11]

primes.remove(5)
# [2, 3, 7, 11]

primes.remove(5)
# careful, this will throw an error
# ValueError: list.remove(x): x not in list

Nếu bạn muốn xóa các mục một cách an toàn và không chắc liệu chúng có tồn tại trong danh sách hay không, bạn có thể bắt lỗi

try:
	primes.remove(5)
except Exception as e:
	print("not in list")

Hoặc, bạn có thể kiểm tra sự tồn tại trước

if 5 in primes:
	primes.remove(5)

Xóa một phần tử trong danh sách Python theo chỉ mục

Câu lệnh del là một từ khóa tích hợp cho phép bạn xóa các mục khỏi danh sách. Ví dụ đơn giản nhất xóa mục tại một chỉ mục nhất định

primes = [2, 3, 5, 5, 7, 11]

# delete the second item
del primes[1]

print(primes)
# [2, 5, 5, 7, 11]

Một lần nữa, bạn cần phải cẩn thận. Nếu chỉ mục không tồn tại, một lỗi sẽ được đưa ra

primes = [2, 3, 5, 5, 7, 11]

# delete the eleventh item
del primes[10]

try:
	primes.remove(5)
except Exception as e:
	print("not in list")
0

________số 8_______

Nhận một công việc back-end mà không cần chi 10 nghìn đô la cho bootcamp

Xóa phần tử khỏi danh sách Python
  • Tìm hiểu Python, Javascript và Go
  • Xây dựng các dự án chuyên nghiệp mà bạn cần để có được công việc đầu tiên
  • Dành khoảng 6 tháng (khi làm bán thời gian)
  • Giá thấp tới $24/tháng*
  • Không mạo hiểm. Hủy bỏ bất cứ lúc nào

Xóa nhiều mục khỏi danh sách python

primes = [2, 3, 5, 5, 7, 11]

# deleting items from 2nd to 4th
del primes[1:4]

print(primes)
# [2, 7, 11]

Xóa mục theo chỉ mục và trả lại

Phương thức

try:
	primes.remove(5)
except Exception as e:
	print("not in list")
1 xóa một mục khỏi danh sách theo chỉ mục và trả về mục đó

primes = [2, 3, 5, 7]

# pop the second element
popped = primes.pop(1)

print("popped:", popped)
# 3

print("list:", primes)
# [2, 5, 7]

Nếu bạn không truyền tham số chỉ mục cho

try:
	primes.remove(5)
except Exception as e:
	print("not in list")
2, nó sẽ mặc định là
try:
	primes.remove(5)
except Exception as e:
	print("not in list")
3 và xóa phần tử cuối cùng khỏi danh sách. Cũng giống như các phương pháp khác, nếu bạn truyền vào một số quá lớn, bạn sẽ gặp lỗi sau