Làm cách nào để chuyển đổi danh sách thành từ điển trong Python?

Danh sách và từ điển là các bộ sưu tập Python cho phép bạn lưu các giá trị tương tự trong một cấu trúc dữ liệu

Ngoài ra, danh sách sẽ cho phép bạn lưu dữ liệu theo một thứ tự cụ thể, trong khi từ điển không có thứ tự và không thể lưu nhiều giá trị trùng lặp. Chuyển đổi danh sách thành từ điển là hoạt động tiêu chuẩn của Python. Vì vậy, hãy xem làm thế nào để làm điều đó

Danh sách Python vào từ điển

Để chuyển đổi danh sách thành từ điển trong Python, hãy sử dụng tính năng hiểu danh sách và tạo cặp khóa-giá trị gồm các phần tử liên tiếp, sau đó nhập danh sách vào loại từ điển. Giá trị trả về được chuyển đổi từ danh sách sang kiểu dữ liệu từ điển

def listToDict[lst]:
    op = {lst[i]: lst[i + 1] for i in range[0, len[lst], 2]}
    return op


lst = ['m', 1, 'b', 2, 'k', 3]
print[listToDict[lst]]

đầu ra

➜  pyt python3 app.py
{'m': 1, 'b': 2, 'k': 3}
➜  pyt

Trong ví dụ trên, chúng ta đã sử dụng vòng lặp for để tách các phần tử chẵn và lẻ, sau đó sử dụng hàm range[] để tạo các giá trị lẻ cho khóa và các giá trị cho từ điển. Chúng tôi đã sử dụng phương pháp hiểu từ điển

Vì vậy, chúng tôi nhận được từ điển được chuyển đổi từ danh sách trong đầu ra

Chuyển đổi danh sách thành từ điển có cùng giá trị

Để chuyển đổi danh sách thành từ điển có cùng giá trị, hãy sử dụng khả năng hiểu từ điển. Giá trị của mỗi khóa sẽ giống nhau.

# app.py

def listToDict[lst]:
    op = { i : 5 for i in lst }
    return op


lst = ['millie', 'caleb', 'finn', 'sadie', 'noah']
print[listToDict[lst]]

Xem đầu ra

➜  pyt python3 app.py
{'millie': 5, 'caleb': 5, 'finn': 5, 'sadie': 5, 'noah': 5}
➜  pyt

Tất cả các phần tử danh sách đã trở thành khóa trong ví dụ trên và 5 là giá trị cho tất cả các phần tử

Danh sách Python để dict sử dụng dict. fromKeys[]

Từ điển. fromKeys[] là một phương thức Python tích hợp để tạo một từ điển mới từ một chuỗi các phần tử nhất định có giá trị do người dùng cung cấp. Phương thức fromKeys[] trả về từ điển với các khóa và giá trị được chỉ định.

Chúng tôi đang tạo từ điển từ danh sách, vì vậy Python Dict fromKeys[] có thể lấy các giá trị khóa từ Danh sách Python và chuyển đổi chúng thành các khóa từ điển. Chúng tôi chuyển tham số thứ hai là 5, một giá trị, vì vậy chúng tôi nhận được đầu ra giống như chương trình trên

# app.py

def listToDict[lst]:
    op = dict.fromkeys[lst , 5]
    return op


lst = ['millie', 'caleb', 'finn', 'sadie', 'noah']
print[listToDict[lst]]

đầu ra

➜  pyt python3 app.py
{'millie': 5, 'caleb': 5, 'finn': 5, 'sadie': 5, 'noah': 5}
➜  pyt

mệnh lệnh. fromKeys[] chấp nhận một danh sách và giá trị mặc định. Nó trả về một từ điển với các mục trong danh sách dưới dạng khóa. Tất cả các mục từ điển sẽ có cùng một giá trị được chuyển vào fromkeys[]

Chuyển đổi các phần tử danh sách thành các giá trị trong từ điển với các khóa được lập chỉ mục trong Python

Trong ví dụ đầu tiên của bài viết này, chúng tôi đã sử dụng các mục danh sách làm khóa và giá trị làm số nguyên trong từ điển. Tuy nhiên, trong ví dụ này, chúng tôi tạo một từ điển với các khóa được lập chỉ mục và các giá trị là các mục trong danh sách python bằng cách sử dụng khả năng hiểu từ điển

Xem đoạn mã sau

# app.py

def listToDict[lst]:
    op = { i : lst[i] for i in range[0, len[lst] ] }
    return op


lst = ['millie', 'caleb', 'finn', 'sadie', 'noah']
print[listToDict[lst]]

đầu ra

➜  pyt python3 app.py
{0: 'millie', 1: 'caleb', 2: 'finn', 3: 'sadie', 4: 'noah'}
➜  pyt

Chuyển đổi hai danh sách thành một từ điển

Để chuyển đổi hai danh sách thành một từ điển trong Python, hãy sử dụng hàm zip[], hàm này trả về danh sách các bộ dữ liệu và chuyển danh sách các bộ dữ liệu đó sang hàm dict[], hàm này trả về từ điển

Giả sử chúng ta có hai danh sách

________số 8_______

Chúng tôi sẽ lấy danh sách đầu tiên làm khóa cho từ điển và danh sách thứ hai làm giá trị

Để đạt được điều đó và tạo một từ điển từ hai danh sách, chúng ta có thể sử dụng hàm zip[] của Python

Xem mã đầy đủ bên dưới

# app.py

def listToDict[lstA, lstB]:
    zippedLst = zip[lstA, lstB]
    op = dict[zippedLst]
    return op


lstStr = ['millie', 'caleb', 'finn', 'sadie', 'noah']
lstInt = [11, 21, 19, 29, 46]
print[listToDict[lstStr, lstInt]]

Xem đầu ra

➜  pyt python3 app.py
{'m': 1, 'b': 2, 'k': 3}
➜  pyt
0

Hàm zip[] chấp nhận một số đối tượng có thể lặp lại và trả về danh sách các bộ dữ liệu

Mỗi mục trong bộ chứa một phần tử từ mỗi đối tượng có thể lặp lại

Chúng ta đã chuyển hai đối tượng danh sách trong hàm zip[], vì vậy nó sẽ trả về một danh sách các bộ, trong đó mỗi bộ chứa một mục nhập từ cả hai danh sách. Sau đó, chúng tôi đã tạo một đối tượng từ điển từ danh sách các bộ dữ liệu này

Nếu độ dài của danh sách khóa nhỏ hơn danh sách giá trị thì các phần tử còn lại trong danh sách giá trị sẽ bị bỏ qua

Chuyển đổi danh sách các bộ dữ liệu thành từ điển trong Python

Để chuyển đổi danh sách các bộ dữ liệu sang từ điển trong Python, hãy sử dụng phương thức dict[] và chuyển danh sách bộ dữ liệu sang phương thức dict[], phương thức này trả về từ điển

➜  pyt python3 app.py
{'m': 1, 'b': 2, 'k': 3}
➜  pyt
1

đầu ra

➜  pyt python3 app.py
{'m': 1, 'b': 2, 'k': 3}
➜  pyt
0

Chúng ta có thể chuyển trực tiếp danh sách các bộ dữ liệu này tới hàm tạo từ điển

Các mục trong cột đầu tiên sẽ trở thành khóa và các mục trong cột thứ hai sẽ là các giá trị trong từ điển mới

Làm cách nào để chuyển đổi danh sách danh sách thành từ điển trong Python?

Để khai báo tuple, bạn chỉ cần thực hiện tuple = [ [1, 30, 5], [2, 64, 4]] , nhưng nếu bạn muốn thay đổi list -> tuple, thì ngoài việc gọi tuple, bạn cần có vòng lặp for

Làm cách nào để chuyển đổi danh sách dict thành từ điển trong Python?

Chuyển đổi danh sách thành từ điển Sử dụng Enumerate[] Bằng cách sử dụng enumerate[] , chúng ta có thể chuyển đổi danh sách thành từ điển với chỉ mục là . enumerate[] sẽ trả về một đối tượng liệt kê.

Làm cách nào để chuyển đổi danh sách chuỗi thành từ điển trong Python?

Phương pháp #1. Sử dụng khả năng hiểu từ điển + split[] Khả năng hiểu từ điển có thể được sử dụng để xây dựng từ điển và chức năng tách có thể được sử dụng để thực hiện các thao tác tách cần thiết trong danh sách để lấy .

Làm cách nào để thêm danh sách vào từ điển trong Python?

Phương pháp 1. Sử dụng dấu += trên khóa có giá trị trống .

Chủ Đề