Các đối tượng bản đồ Python

Python map[] là một hàm tích hợp áp dụng một hàm cho tất cả các mục đầu vào của trình vòng lặp. Ví dụ: một danh sách, tuple, v.v. có thể là một trình vòng lặp và nó trả về một đối tượng bản đồ có thể được lặp lại. Hàm map[] sẽ thêm tất cả các mục bên trong trình vòng lặp vào hàm đã chỉ định, sau đó trả về một đối tượng bản đồ có thể lặp lại, i. e. Tuple, danh sách, v.v. map[] trong Python là một hàm nhúng cũng có thể được sử dụng trong Python với các hàm tích hợp khác.  

Sử dụng lớp list[] để chuyển đổi đối tượng map thành một danh sách để in ra, e. g. print[list[map[function, iterable]]]. Hàm map[] trả về một đối tượng map có thể được chuyển đổi thành một danh sách bằng cách sử dụng lớp list[]

Chúng tôi đã sử dụng lớp list[] để chuyển đổi một đối tượng map thành một danh sách để có thể in nó

Lớp nhận một iterable và trả về một đối tượng danh sách

Hàm nhận một hàm và một iterable làm đối số và gọi hàm với mỗi mục của iterable

Hàm map trả về một đối tượng map, vì vậy để in các phần tử của nó, chúng ta phải chuyển đổi đối tượng thành một danh sách hoặc lặp lại đối tượng đó

Vòng lặp map0 in từng phần tử trong đối tượng map trên một dòng riêng biệt

Bạn cũng có thể sử dụng toán tử giải nén lặp lại map2 để chuyển đổi đối tượng map thành danh sách trước khi in nó

Cho phép chúng tôi giải nén một lần lặp trong các lệnh gọi hàm, trong khả năng hiểu và trong các biểu thức của trình tạo

Bạn có thể tưởng tượng rằng các phần tử của map được giải nén dưới dạng các giá trị được phân tách bằng dấu phẩy trong danh sách mới

Hàm map nhận một hàm và một iterable và gọi hàm với mỗi mục của iterable

Bạn có thể sử dụng cách hiểu danh sách để đạt được kết quả tương tự

Khả năng hiểu danh sách được sử dụng để thực hiện một số thao tác cho mọi phần tử hoặc chọn một tập hợp con các phần tử đáp ứng một điều kiện

Trong Python, bạn có thể sử dụng hàm map[] tích hợp để ánh xạ. Hàm

[1, 4, 9, 16, 25]
2 trả về một đối tượng bản đồ. Đối tượng bản đồ này là kết quả của việc áp dụng một thao tác trên một lần lặp, chẳng hạn như một danh sách. Bạn có thể dễ dàng chuyển đổi đối tượng bản đồ này trở lại danh sách chẳng hạn bằng cách gọi hàm
[1, 4, 9, 16, 25]
4 trên đó

Cú pháp sử dụng hàm

[1, 4, 9, 16, 25]
2

map[operation, iterable]

Trong đó

[1, 4, 9, 16, 25]
6 là một hàm hoặc hàm lambda, tùy theo ý thích của bạn.
[1, 4, 9, 16, 25]
7 là nhóm các mặt hàng mà bạn áp dụng
[1, 4, 9, 16, 25]
6

Ánh xạ danh sách Python

Ánh xạ hoạt động cho bất kỳ lần lặp nào trong Python. Nói cách khác, bạn có thể sử dụng nó trên một danh sách

Ví dụ: hãy bình phương một danh sách các số. Cách tiếp cận này sử dụng hàm lambda làm hàm ánh xạ. Nếu bạn không quen với lambdas, vui lòng xem hướng dẫn này hoặc xem ví dụ tiếp theo không có lambdas

numbers = [1, 2, 3, 4, 5]

squared_nums = map[lambda x: x ** 2, numbers]
print[list[squared_nums]]

đầu ra

[1, 4, 9, 16, 25]

Đây là ví dụ tương tự. Lần này, chúng tôi không sử dụng hàm lambda mà thay vào đó là một hàm thông thường

numbers = [1, 2, 3, 4, 5]

def square[number]:
    return number ** 2

squared_nums = map[square, numbers]
print[list[squared_nums]]

đầu ra

[1, 4, 9, 16, 25]

Đây là kết quả của việc áp dụng hàm

[1, 4, 9, 16, 25]
9cho mỗi phần tử của danh sách các số. Lưu ý cách bạn không cần cung cấp cho hình vuông một tham số trong hàm bản đồ. Điều này có thể thực hiện được vì chức năng bản đồ biết bạn đang cố gắng làm gì. Nó tự động chuyển từng phần tử làm đối số cho từng hàm một

Ánh xạ từ điển Python

Bạn cũng có thể ánh xạ từ điển trong Python bằng cách sử dụng chức năng

[1, 4, 9, 16, 25]
2 tích hợp

Ví dụ: hãy lập bản đồ

map[operation, iterable]
1 sao cho giá trị của các cặp khóa-giá trị trở thành các chuỗi được viết hoa

data = {
    "name": "jack",
    "address": "imaginary street",
    "education": "mathematican"
}

def capitalize[word]:
    return word.capitalize[]

data_map = map[lambda pair: [pair[0], capitalize[pair[1]]], data.iteritems[]]
data = dict[data_map]

print[dict[data]]

đầu ra

{'name': 'Jack', 'address': 'Imaginary street', 'education': 'Mathematican'}

Có khá nhiều dòng mã, vì vậy hãy làm rõ cách thức hoạt động của nó

  • map[operation, iterable]
    1, là từ điển các cặp khóa-giá trị. Các giá trị không được viết hoa và chúng tôi muốn thay đổi điều đó
  • Hàm
    map[operation, iterable]
    3 lấy một chuỗi và trả về một phiên bản viết hoa của nó
  • map[operation, iterable]
    4 là một đối tượng bản đồ. Nó được tạo bằng cách áp dụng hàm
    map[operation, iterable]
    3 cho từng giá trị của từng cặp khóa-giá trị trong
    map[operation, iterable]
    1
  • Để chuyển đổi
    map[operation, iterable]
    4 trở lại từ điển, chúng tôi sử dụng hàm
    map[operation, iterable]
    8 tích hợp

Ánh xạ Python Tuples

Bạn cũng có thể ánh xạ các bộ dữ liệu trong Python. Điều này hoạt động rất giống với việc ánh xạ một danh sách

Ví dụ: hãy tạo một bộ dữ liệu bằng cách viết hoa tên của một bộ dữ liệu khác

names = ["jamie", "jane", "jack"]

def capitalize[word]:
    return word.capitalize[]

capitalized_names = map[capitalize, names]
print[tuple[capitalized_names]]

đầu ra

[1, 4, 9, 16, 25]
0

Phần kết luận

Trong Python, bạn có thể sử dụng ánh xạ để chuyển đổi một nhóm giá trị thành một nhóm giá trị khác. Để thực hiện việc này, hãy sử dụng hàm

[1, 4, 9, 16, 25]
2 tích hợp. Hàm này hoạt động bằng cách áp dụng một hàm cho từng phần tử của nhóm giá trị

Có một đối tượng bản đồ trong Python?

Python's map[] là một chức năng tích hợp sẵn cho phép bạn xử lý và chuyển đổi tất cả các mục trong một lần lặp mà không cần sử dụng vòng lặp for rõ ràng , một kỹ thuật thường được gọi là ánh xạ. map[] rất hữu ích khi bạn cần áp dụng hàm chuyển đổi cho từng mục trong một lần lặp và biến chúng thành một lần lặp mới.

Bản đồ Python có nhanh hơn vòng lặp không?

Vì vậy, trong bản đồ so với vòng lặp python speed , bản đồ thắng .

Bạn có thể tạo bản đồ tương tác bằng Python không?

Có hai gói Python tuyệt vời để tạo bản đồ tương tác. tán lá và mapboxgl . Cả hai gói này đều được xây dựng dựa trên thư viện JavaScript có tên là tờ rơi. js. Bài học này sẽ tập trung vào folium, đã tồn tại lâu hơn mapboxgl và do đó, được cộng đồng Python ghi lại đầy đủ.

Chủ Đề