cuốn sách gpt4 ai đã làm

python - Trả về n lần danh sách riêng biệt thứ n trong danh sách từ điển

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 16:22:31 28 4
mua khóa gpt4 Nike

Tôi có một cuốn từ điển tương tự như thế này:

[{ 'khóa' : 10, 'giá trị' : [ [1,2] [3,4,5] [6,7,8,9] ] }, { ... }]

Miễn là có một giá trị trong danh sách dài nhất, tôi cố gắng trả về một từ điển mới với "giao điểm" làm khóa và phần tử thứ n của mỗi danh sách làm giá trị. Danh sách có độ dài khác nhau, danh sách ngắn hơn sẽ chỉ nối thêm giá trị cuối cùng của chúng nhiều lần, ví dụ:

{10:[1,3,6]}

{10:[2,4,7]}

{10:[2,5,8]}

{10:[2,5,9]}

Tôi nên lặp lại itervalues(), iterkey() hay iteritems()? Có thể có những câu hỏi tương tự được đăng lên nhưng tôi không tìm được cách giải thích ngắn gọn, thiếu từ khóa.

Làm cách nào tôi có thể tạo một chức năng có thể hoàn thành nhiệm vụ này?

câu trả lời hay nhất

bạn cầnLặp lại nhiều lần cho đến khi có mục trong danh sách số dài nhất. Trên mỗi lần lặp, bạn nhận được giá trị thứ n từ mỗi danh sách bằng cách sử dụng chỉ mục tăng dần.

尝试这样的事情:

def giao nhau (khóa, giá trị):
"""
Trả về n lần số thứ n của mỗi danh sách trong `values`,
trong danh sách từ điển.
"""
giao nhau_list = []
dài nhất = max(map(len,values))
cho n trong phạm vi (dài nhất):
# lấy giá trị thứ n nếu có một hoặc chỉ giá trị cuối cùng
nth_values ​​​= [l[n] if n
intersect_list.append({key:nth_values})
trở lại giao lộ_list

dict_list = [{ 'key':10, 'values':[[1,2],[3,4,5],[6,7,8,9]] }]
cho d trong dict_list:
print(intersect(d['key'],d['values']))

Nó sẽ cung cấp cho bạn đầu ra mong muốn:

[{10: [1, 3, 6]}, {10: [2, 4, 7]}, {10: [2, 5, 8]}, {10: [2, 5, 9]}]

Về python - trả về n lần danh sách riêng biệt thứ n trong danh sách từ điển, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/38294070/

28 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress