Python3實(shí)現(xiàn)的簡(jiǎn)單工資管理系統(tǒng)示例
本文實(shí)例講述了Python3實(shí)現(xiàn)的簡(jiǎn)單工資管理系統(tǒng)。分享給大家供大家參考,具體如下:
工資管理系統(tǒng)要求:
1. 查詢(xún)員工工資
2. 修改員工工資
3. 增加新員工記錄
4. 退出
執(zhí)行代碼:
#!/usr/bin/env python3
# Author:Robert
# --*-- coding: utf-8 --*--
def file_test():
with open("info.txt",'r',encoding="utf-8") as f:
file = list(f)
return file
def server():
for i in range(1):
print("1.查詢(xún)員工工資\n2.修改員工工資\n3.增加新員工記錄\n4.退出")
return i
loginSucces = False
while True:
i = server()
serial_number = input("請(qǐng)選擇你的服務(wù)>>:")
if serial_number.isdigit():
serial_number = int(serial_number)
file = file_test()
if serial_number < 5 and serial_number >= 0:
if serial_number == 1:
name = input("請(qǐng)輸入要查詢(xún)的員工姓名:").strip()
for i in file:
file = i.strip().split()
if name in file:
break
for i in file:
if name in file:
name_sum = file[1]
print("\033[32;1m%s的工資是:%s\033[0m\n"%(name,name_sum))
break
else:
print("\033[31;1m沒(méi)有此用戶(hù)!\033[0m\n")
elif serial_number == 2:
name_old = input("請(qǐng)輸入要修改的員工姓:").strip()
for ii in file:
file = ii.strip().split()
if name_old in file:
print(file)
sum_old = file[1]
name_alter,sum_alter = input("請(qǐng)輸入修改的新員工姓名和工資,用空格分割:").strip().split()
with open("info.txt","r",encoding="utf-8") as f:
lines = f.readlines()
with open("info.txt","w",encoding="utf-8") as f_a:
for line in lines:
if name_old in line:
line = line.replace(name_old,name_alter)
f_a.write(line)
f_a.close()
with open("info.txt", "r", encoding="utf-8") as f:
lines = f.readlines()
with open("info.txt", "w", encoding="utf-8") as f_b:
for line in lines:
if name_alter in line:
line = line.replace(sum_old,sum_alter)
f_b.write(line)
f_b.close()
print("修改成功")
break
if loginSucces == True: break
else:
print("\033[31;1m沒(méi)有此用戶(hù)!\033[0m\n")
elif serial_number == 3:
try:
name_new, sum_new = input("請(qǐng)輸入要增加的員工姓名和工資,用空格分割:").strip().split()
except ValueError:
print("\033[31;1m輸入的參數(shù)不夠!\033[0m\n")
else:
if name_new.isalpha() and sum_new.isdigit():
for ii in file:
file = ii.strip().split()
if name_new not in file:
with open("info.txt", "a+", encoding="utf-8") as f_c:
f_c.write("\n%s %s"%(name_new,sum_new))
print("增加成功")
break
if loginSucces == True: break
else:
print("\033[31;1m參數(shù)類(lèi)型不對(duì)!\033[0m\n")
elif serial_number == 4:
print("\033[31;1m謝謝使用,下次再見(jiàn)!\033[0m\n")
exit()
else:
print("\033[31;1m請(qǐng)輸入正確的序號(hào)!\033[0m\n")
else:
print("\033[31;1m輸入的不是整數(shù)!\033[0m\n")
info.txt
name salary
Alex 100000
Rain 80000
Egon 50000
Yuan 30000
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專(zhuān)題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門(mén)與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python實(shí)現(xiàn)多個(gè)視頻合成一個(gè)視頻的功能
這篇文章主要介紹了可以將多個(gè)視頻拼接為一個(gè)視頻的Python工具代碼,文中的代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,快來(lái)跟隨小編一起學(xué)習(xí)一下吧2021-12-12
python3實(shí)現(xiàn)常見(jiàn)的排序算法(示例代碼)
排序是非常常見(jiàn)的排序算法,今天給大家分享幾種比較常見(jiàn)的排序算法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-07-07
用Python制作檢測(cè)Linux運(yùn)行信息的工具的教程
這篇文章主要介紹了用Python制作檢測(cè)Linux運(yùn)行信息的工具的教程,主要是用CPython讀取運(yùn)行系統(tǒng)的硬件參數(shù)、網(wǎng)絡(luò)傳輸流量統(tǒng)計(jì)等,需要的朋友可以參考下2015-04-04
零基礎(chǔ)寫(xiě)python爬蟲(chóng)之爬蟲(chóng)框架Scrapy安裝配置
Scrapy是一個(gè)使用Python編寫(xiě)的,輕量級(jí)的,簡(jiǎn)單輕巧,并且使用起來(lái)非常的方便。使用Scrapy可以很方便的完成網(wǎng)上數(shù)據(jù)的采集工作,它為我們完成了大量的工作,而不需要自己費(fèi)大力氣去開(kāi)發(fā)。2014-11-11

