Trích xuất các giá trị từ danh sách 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. Từ điển Python chứa Danh sách dưới dạng giá trị. Viết chương trình Python để cập nhật các giá trị danh sách trong từ điển đã nói
Kế tiếp. Viết chương trình Python để tìm độ dài của một giá trị từ điển đã 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

Phân hủy một bộ sưu tập

Giả sử chúng ta có một hàm trả về một bộ gồm hai giá trị và chúng ta muốn gán mỗi giá trị cho một biến riêng biệt. Một cách là sử dụng lập chỉ mục như dưới đây

abc = [5, 10]
x = abc[0]
y = abc[1]
print[x, y]

đầu ra

5 10

Có một tùy chọn tốt hơn cho phép chúng tôi thực hiện thao tác tương tự trong một dòng

x, y = abc
print[x, y]

đầu ra

5 10

Nó có thể được mở rộng thành một bộ có nhiều hơn 2 giá trị hoặc một số cấu trúc dữ liệu khác như danh sách hoặc bộ

Viết chương trình Python để trích xuất số lượng phần tử được chỉ định từ một danh sách nhất định, nối tiếp nhau liên tục

Giải pháp mẫu

Mã Python

from itertools import groupby 

def extract_elements[nums, n]:
    result = [i for i, j in groupby[nums] if len[list[j]] == n] 
    return result

nums1 = [1, 1, 3, 4, 4, 5, 6, 7]
n = 2
print["Original list:"]
print[nums1]
print["Extract 2 number of elements from the said list which follows each other continuously:"] 
print[extract_elements[nums1, n]]
nums2 = [0, 1, 2, 3, 4, 4, 4, 4, 5, 7]
n = 4
print["Original lists:"]
print[nums2]
print["Extract 4 number of elements from the said list which follows each other continuously:"] 
print[extract_elements[nums2, n]]

Đầu ra mẫu

Original list:
[1, 1, 3, 4, 4, 5, 6, 7]
Extract 2 number of elements from the said list which follows each other continuously:
[1, 4]
Original lists:
[0, 1, 2, 3, 4, 4, 4, 4, 5, 7]
Extract 4 number of elements from the said list which follows each other continuously:
[4]

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



Sơ đồ


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 để trích xuất kích thước chuỗi được chỉ định từ danh sách các giá trị chuỗi đã cho
Kế tiếp. Viết chương trình Python để tìm sự khác biệt giữa các số liên tiếp trong một danh sách nhất định

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

Phân hủy một bộ sưu tập

Giả sử chúng ta có một hàm trả về một bộ gồm hai giá trị và chúng ta muốn gán mỗi giá trị cho một biến riêng biệt. Một cách là sử dụng lập chỉ mục như dưới đây

abc = [5, 10]
x = abc[0]
y = abc[1]
print[x, y]

đầu ra

5 10

Có một tùy chọn tốt hơn cho phép chúng tôi thực hiện thao tác tương tự trong một dòng

x, y = abc
print[x, y]

đầu ra

5 10

Nó có thể được mở rộng thành một bộ có nhiều hơn 2 giá trị hoặc một số cấu trúc dữ liệu khác như danh sách hoặc bộ

Trong Python, bạn có thể tạo một danh sách mới bằng cách trích xuất, xóa, thay thế hoặc chuyển đổi các phần tử đáp ứng các điều kiện của danh sách hiện có bằng khả năng hiểu danh sách

Bài viết này mô tả các nội dung sau

  • Khái niệm cơ bản về hiểu danh sách
  • Áp dụng thao tác cho tất cả các phần tử của danh sách
  • Trích xuất/xóa các phần tử thỏa mãn điều kiện khỏi danh sách
  • Thay thế/chuyển đổi các phần tử thỏa mãn điều kiện trong danh sách

Xem bài viết sau để biết ví dụ về danh sách các chuỗi

  • Trích xuất và thay thế các phần tử đáp ứng điều kiện của danh sách chuỗi trong Python

Cũng có thể lấy mẫu ngẫu nhiên các phần tử từ danh sách

  • lấy mẫu ngẫu nhiên từ một danh sách trong Python [ngẫu nhiên. lựa chọn, mẫu, lựa chọn]

Lấy danh sách sau đây làm ví dụ

l = list[range[-5, 6]]
print[l]
# [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]

nguồn.

Liên kết được tài trợ

Khái niệm cơ bản về hiểu danh sách

Trong Python, bạn có thể tạo một

[expression for variable_name in iterable if condition]
3 bằng cách sử dụng khả năng hiểu danh sách. Nó đơn giản hơn là sử dụng vòng lặp
[expression for variable_name in iterable if condition]
4

[expression for variable_name in iterable if condition]

[expression for variable_name in iterable if condition]
5 được áp dụng cho các phần tử thỏa mãn
[expression for variable_name in iterable if condition]
6 của
[expression for variable_name in iterable if condition]
7 [danh sách, bộ, v.v. ] và một danh sách mới được tạo. Có thể bỏ qua
[expression for variable_name in iterable if condition]
8, nếu bỏ qua thì
[expression for variable_name in iterable if condition]
5 được áp dụng cho tất cả các phần tử

Xem bài viết sau để biết chi tiết về hiểu danh sách

  • Danh sách hiểu trong Python

Áp dụng thao tác cho tất cả các phần tử của danh sách

Nếu bạn viết thao tác mong muốn trong phần

[expression for variable_name in iterable if condition]
5 của phần hiểu danh sách, thao tác đó sẽ được áp dụng cho tất cả các thành phần của danh sách

l_square = [i**2 for i in l]
print[l_square]
# [25, 16, 9, 4, 1, 0, 1, 4, 9, 16, 25]

l_str = [str[i] for i in l]
print[l_str]
# ['-5', '-4', '-3', '-2', '-1', '0', '1', '2', '3', '4', '5']

nguồn.

Bạn có thể sử dụng điều này để chuyển đổi danh sách số thành danh sách chuỗi. Xem chi tiết bài viết sau

  • Chuyển đổi danh sách chuỗi và danh sách số với nhau trong Python

Liên kết được tài trợ

Trích xuất/xóa các phần tử thỏa mãn điều kiện khỏi danh sách

Nếu chỉ muốn chọn các phần tử bằng

[expression for variable_name in iterable if condition]
6 thì không cần xử lý bằng
[expression for variable_name in iterable if condition]
5, có thể viết như sau

[variable_name for variable_name in original_list if condition]

Chỉ các phần tử đáp ứng các điều kiện [các phần tử trả về

l_square = [i**2 for i in l]
print[l_square]
# [25, 16, 9, 4, 1, 0, 1, 4, 9, 16, 25]

l_str = [str[i] for i in l]
print[l_str]
# ['-5', '-4', '-3', '-2', '-1', '0', '1', '2', '3', '4', '5']
3 cho
[expression for variable_name in iterable if condition]
6] mới được trích xuất và một danh sách mới được tạo

l_even = [i for i in l if i % 2 == 0]
print[l_even]
# [-4, -2, 0, 2, 4]

l_minus = [i for i in l if i 

Chủ Đề