5-9 處理沒有使用者的情形:在為完成練習5-8編寫的程式中,新增一條if 語句,檢查使用者名稱列表是否為空。
- 如果為空,就列印訊息「we need to find some users!」。
- 刪除列表中的所有使用者名稱,確定將列印正確的訊息。
solution:
users =
if users:
for user in users:
if user == "admin":
print("hello admin, would you like to see a status report?")
else:
print("hello " + user + ", thank you for logging in again.")
else:
print("we need to find some users!")
output:
5-10 檢查使用者名稱:按下面的說明編寫乙個程式,模擬**確保每位使用者的使用者名稱都獨一無二的方式。
- 建立乙個至少包含5個使用者名稱的列表,並將其命名為current_users。
- 再建立乙個包含5個使用者名稱的列表,將其命名為new_users,並確保其中有一兩個使用者名稱也包含在列表current_users中。
- 遍歷列表new_users,對於其中的每個使用者名稱,都檢查它是否已被使用。如果是這樣,就列印一條訊息,指出需要輸入別的使用者名稱;否則,列印一條訊息,指出這個使用者名稱未被使用。
- 確保比較時不區分大訊息;換句話說,如果使用者名稱』john』 已被使用,應拒絕使用者名稱』john』 。
solution:
current_users = ["bengi", "ashero", "tim", "pat", "faker"]
new_users = ["bang", "blank", "wolf", "pat", "faker"]
lower_current_users =
for current_user in current_users:
for new_user in new_users:
if new_user.lower() in lower_current_users:
print("this name has been used." +
"you need to use another one.")
else:
print("this name hasn't been used yet.")
output:
this name hasn't been used yet.
this name hasn't been used yet.
this name hasn't been used yet.
this name has been used.you need to
use another one.
this name has been used.you need to
use another one.
注:在儲存使用者名稱的時候其實最好是將其全部儲存為小寫字母,這樣在進行比較的時候就不會需要額外再寫乙個列表把小寫的儲存了。
5-11 序數:序數表示位置,如1st和2nd。大多數序數都以th結尾,只有1、2和3例外。
solution:
nums = range(1,10)
for num in nums:
if num == 1:
print("1st")
elif num == 2:
print("2nd")
elif num == 3:
print("3rd")
else:
print(str(num) + "th")
output:
1
st2nd
3rd4th
5th6th
7th8th
9th
高階程式設計技術作業 5
題目描述 使用乙個for迴圈列印數字1 20 包含 展示 for number in range 1,21 print number input null output 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 題目描述 通過給函式rang...
高階程式設計技術(Python)作業7
書上寫了sublime無法執行使用者互動的 事實上只要安裝乙個repl就可以進行使用者互動了。但是repl並沒有辦法進行死迴圈的跳出處理,所以一旦 出現死迴圈,sublime就會失去響應,只能關閉sublime。而不使用repl正常執行python就可以使用ctrl c中斷死迴圈但是又不能進行使用者...
高階程式設計技術作業 7
題目描述 使用乙個字典來儲存一些人喜歡的數字。請想5個人的名字,並將這些名字用作字典中 的鍵 想出每個人喜歡的乙個數字,並將這些數字作為值儲存在字典中。列印每個人的名字和喜歡 的數字。展示 dic for name,number in dic.items print name str number ...