Tôi đang làm việc trên một chương trình (trong số những thứ khác) đọc một tệp CSV trong (nó được lưu trữ dưới dạng một mảng các chữ cái ở dạng [{col1:data1a,col2:data2a},{col1:data1b,col2:data2b}]
). Đối với mỗi hàng, như một phần của quá trình xử lý khác, tôi cần phải remap các khóa đó cho các giá trị do người dùng nhập vào, được cung cấp trong một lệnh khác để chúng có thể được sử dụng làm tham số trong lệnh gọi API. Mảng ánh xạ có dạng: {badname1:goodname1, badname2:goodname2,...}
.Làm cách nào để tái ánh xạ các phím dict python
Vì vậy, tôi muốn nhận được từ: {badname1:data1, badname2:data2,...}
để {goodname1:data1, goodname2:data2,...}
Tôi muốn sử dụng cái gì đó như zip()
(mặc dù sản lượng zip()
{badname1:badname1,...}
).
Dường như có một giải pháp rõ ràng đang ám chỉ tôi.
EDIT: Nếu dữ liệu là trong a
và lập bản đồ trong b
:
dict(zip(b,a.itervalues()))
tôi nhận được gần, nhưng nó sẽ chỉ làm việc trong trường hợp các lĩnh vực được biết là theo thứ tự Tôi nghĩ.
Đúng. Cũng hoạt động mà không có [], như là một biểu thức máy phát điện. –