Xin chào mọi người, tôi đang cố viết một chương trình bằng Python hoạt động như một trò chơi đố vui. Tôi đã thực hiện một từ điển ở đầu chương trình có chứa các giá trị mà người dùng sẽ được kiểm tra. Nó thiết lập như sau:Từ điển Python3 lặp qua các giá trị?
PIX0 = {"QVGA":"320x240", "VGA":"640x480", "SVGA":"800x600"}
Vì vậy, tôi định nghĩa một hàm có sử dụng một vòng lặp for
để lặp qua các phím từ điển và yêu cầu đầu vào từ người dùng, và so sánh đầu vào người sử dụng với giá trị phù hợp với chìa khóa.
for key in PIX0:
NUM = input("What is the Resolution of %s?" % key)
if NUM == PIX0[key]:
print ("Nice Job!")
count = count + 1
else:
print("I'm sorry but thats wrong. The correct answer was: %s." % PIX0[key])
lượng tốt đang làm việc này trông như thế này:
What is the Resolution of Full HD? 1920x1080
Nice Job!
What is the Resolution of VGA? 640x480
Nice Job!
Vì vậy, những gì tôi muốn để có thể làm là có một chức năng riêng biệt mà đặt câu hỏi theo cách khác, cung cấp cho người dùng số độ phân giải và yêu cầu người dùng nhập tên của tiêu chuẩn hiển thị. Vì vậy, tôi muốn thực hiện một vòng lặp for nhưng tôi không thực sự biết làm thế nào để (hoặc nếu bạn thậm chí có thể) lặp qua các giá trị trong từ điển và yêu cầu người dùng nhập các phím.
Tôi muốn có đầu ra mà trông giống như sau:
Which standard has a resolution of 1920x1080? Full HD
Nice Job!
What standard has a resolution of 640x480? VGA
Nice Job!
Tôi đã thử chơi với for value in PIX0.values()
và thats cho phép tôi để lặp qua các giá trị điển, nhưng tôi không biết làm thế nào để sử dụng để "kiểm tra" câu trả lời của người dùng dựa trên các phím từ điển. Nếu bất cứ ai có thể giúp nó sẽ được đánh giá cao.
EDIT: Rất tiếc, tôi đang sử dụng Python3.
Có vẻ như bạn đang tìm kiếm khả năng tra cứu khóa bằng giá trị trong từ điển. Có một câu trả lời cho điều đó ở đây: http://stackoverflow.com/questions/2568673/inverse-dictionary-lookup-python –
Bạn đang sử dụng phiên bản Python nào? – michaelpri