python核心程式設計 練習題7 8

2021-07-05 22:16:48 字數 1749 閱讀 9135

7-8. 人力資源。建立乙個簡單的雇員姓名和編號的程式。讓使用者輸入一組雇員姓名和編號。你的程式可以提供按照姓名排序輸出的功能,雇員姓名顯示在前面,後面是對應的雇員編號。附加題:新增一項功能,按照雇員編號的順序輸出資料。

用的python3.4  排序函式sorted整了半天  

特別注意的是3.4對字典的排序用的是

sorted_x = sorted(dict.items(), key=lambda a:a[0],reverse=false)

db={}

global lenb

lenb=0

def insert():

'''負責插入資料的操作

''' global lenb

prompt='請輸入你要新增的資料:'

done=false

while not done:

try:

db[input('雇員')]=int(input('編號'))

except:

print('輸入錯誤')

else:

done=true

lenb=lenb+1

def sort_name():

'''按姓名排序並顯示

''' sorted_x = sorted(db.items(), key=lambda a:a[0])

for i in range(0,lenb):

print('雇員:%s 編號:%s '%(sorted_x[i][0],sorted_x[i][1]))

def sort_id():

'''按編號排序並顯示

''' sorted_x = sorted(db.items(), key=lambda a:a[1])

for i in range(0,lenb):

print('雇員:%s 編號:%s '%(sorted_x[i][0],sorted_x[i][1]))

def manage():

'''管理選單

''' prompt = """

(1)插入資料

(2)顯示按姓名排序

(3)顯示按編號排序

(q)退出

enter choice: """

done = false

while not done:

chosen = false

while not chosen:

try:

choice = input(prompt).strip()[0].lower()

except (eoferror, keyboardinterrupt):

choice = 'q'

print ('\nyou picked: [%s]' % choice)

if choice not in '123q':

print ('invalid option, try again')

else:

if choice == 'q':

done = true

break

if choice == '2':

sort_name()

if choice == '3':

sort_id()

if choice == '1':

insert()

if __name__ == '__main__':

manage()

python書中練習題 python練習題

1 定義乙個空列表,接收從鍵盤輸入的整數,把列表傳給乙個從大到小排序的函式,再輸出排序後的列表的值 listex b 0 a int input 請輸入列表長度 while b a num int input 請輸入字元 b 1 print listex sum 0 for i in range 0...

python的練習題 Python練習題

1 使用while迴圈輸入1 2 3 4 5 6 8 9 10 i 0while i 10 i i 1 if i 7 continue print i 結果 e python python python test.py1 2 求1 100的所有數的和 i 0sum 0 while i 100 i 1...

程式設計練習題

程式student create student studs,int n student 是乙個結構型別,包含姓名 成績和指標域。studs 陣列中儲存了n個 student 記錄。create 函式的功能是編寫根據 studs 陣列建立乙個鍊錶,鍊錶中結點按成績降序排列,函式返回煉表頭指標。inc...