Python 708 詞典合併
Python TQC
題目說明:¶
請撰寫一程式,自行輸入兩個詞典(以輸入鍵值”end”作為輸入結束點,詞典中將不包含鍵值”end”),將此兩詞典合併,並根據key值字母由小到大排序輸出,如有重複key值,後輸入的key值將覆蓋前一key值。
輸入與輸出會交雜如下,輸出的部份以粗體字表示¶
Create dict1:
Key: a
Value: apple
Key: b
Value: banana
Key: d
Value: durian
Key: end
Create dict2:
Key: c
Value: cat
Key: e
Value: elephant
Key: end
a: apple
b: banana
c: cat
d: durian
e: elephant
題目分析
這個問題要求我們編寫一個程式,讓用戶輸入兩個詞典,然後將這兩個詞典合併,並根據鍵值的字母由小到大排序後輸出。根據問題描述,我們可以按照以下步驟思考和解決問題:
-
問題分析:
- 理解問題要求:首先,我們需要理解題目要求,即讓用戶自行輸入兩個詞典,然後將它們合併並排序後輸出。
- 確定輸入和輸出:輸入包括用戶自行輸入的兩個詞典,輸出則為合併後並按鍵值排序的詞典。 -
解題思路:
- 使用一個while迴圈來接收用戶的輸入,直到用戶輸入”end”為止,建立詞典。
- 將兩個詞典進行合併,可以使用update()方法將第二個詞典合併到第一個詞典中。
- 使用sorted()函數對詞典的鍵值進行排序,並將排序後的詞典輸出。 -
思考方向:
- 如何處理用戶輸入:使用迴圈來逐一接收用戶輸入的鍵值和對應的值,並在輸入”end”後停止。
- 如何進行詞典合併:使用update()方法將第二個詞典合併到第一個詞典中。
- 如何對詞典的鍵值進行排序:使用sorted()函數對詞典的items()進行排序,並將排序後的詞典輸出。
Solution¶
Warning
注意使用dictionary排序時的寫法dict(sorted(d1.items()))
Reference
Created : 13 novembre 2024