Files
simulated-examination/q2_2.py
2026-06-23 10:25:13 +08:00

43 lines
1.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import json
# 读取本地json文件
with open("movies.json", "r", encoding="utf-8") as f:
data = json.load(f)
movie_list = data["movies"]
# ① 找出评分最高、最低电影并打印
ratings = [m["rating"] for m in movie_list]
max_rating = max(ratings)
min_rating = min(ratings)
max_movies = [m for m in movie_list if m["rating"] == max_rating]
min_movies = [m for m in movie_list if m["rating"] == min_rating]
print("===== 1. 评分极值电影 =====")
print("评分最高的电影:")
for m in max_movies:
print(f"{m['title']} - {m['rating']}")
print("评分最低的电影:")
for m in min_movies:
print(f"{m['title']} - {m['rating']}")
# ② 统计各类型电影数量
genre_count = {}
for m in movie_list:
g = m["genre"]
genre_count[g] = genre_count.get(g, 0) + 1
print("\n===== 2. 各类型电影数量 =====")
print(genre_count)
# ③ 统计各导演电影数量
director_count = {}
for m in movie_list:
d = m["director"]
director_count[d] = director_count.get(d, 0) + 1
print("\n===== 3. 各导演电影数量 =====")
print(director_count)
# ④ 统计2020年后上映电影数量
count_after_2020 = sum(1 for m in movie_list if m["year"] >= 2020)
print("\n===== 4. 2020年(含)后上映电影总数 =====")
print(count_after_2020)