文章目錄
- 一、準備作業
- 二、代碼流程
- 三、打包exe可執行程式
由于Python都會了,學校教的確實基礎,平時就沒怎么去上課,讓美女老師天天腦殼痛,這不快畢業了,讓我做一個學生管理系統出來,還要打包成exe發給她,她就不追究我不上課的問題了~
話說這能難倒我嗎?趕趕單單~

來 ,開搞!
一、準備作業
用到的軟體準備一哈
- Python 3.8
- Pycharm 2021.2
知識點
- Python基礎語法
- 基本的資料型別與結構
- 基本的邏輯控制陳述句
- 實戰小專案
二、代碼流程
= 賦值 就是把等號左邊的內容 用 等號右邊的這個變數名字 接收
msg = """**************************************************
歡迎使用【學生資訊管理系統】V1.0
請選擇你想要進行的操作
1. 新建學生資訊
2. 顯示全部資訊
3. 查詢學生資訊
4. 洗掉學生資訊
5. 修改學生資訊
0. 退出系統
**************************************************"""
學生資訊用串列保存,并且里面字典資料型別
student_info = [
{'姓名': '木子', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
{'姓名': '巳月', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
{'姓名': '婧琪', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
]
整一個死回圈
while True:
print(msg) # 輸出函式 print
# = 左邊都是自定義的變數 變數不能以數字開頭 不推薦使用關鍵字作為變數名 建議變數見名知意
# 輸入的內容 資料型別是字串 資料型別
input_world = input('請輸入你想要進行的操作: ')
# print('你選擇的操作是: ', input_world)
# 多條件判斷的陳述句 一個 = 是賦值 兩個 = 比較 是否相等
# 注釋
if input_world == '1': # 判斷 input_world(輸入的內容) 是否 等于 1
print('新建學生資訊')
name = input('請輸入學生的姓名: ')
chinese = input('請輸入學生的語文成績: ')
math = input('請輸入學生的數學成績: ')
English = input('請輸入學生的英語成績: ')
# len() == 10 統計元素個數 如果 多或者少 進行判斷
total = int(chinese) + int(math) + int(English) # 總分 轉整型
dit = {
'姓名': name,
'語文': chinese,
'數學': math,
'英語': English,
'總分': total,
}
student_info.append(dit)
elif input_world == '2':
print('顯示全部資訊')
print('姓名\t語文\t數學\t英語\t總分')
for遍歷回圈
for student in student_info:
# 隔空 空tab鍵位 四個空格 \n換行
# {} 字典資料型別 根據鍵值對提取內容 (根據冒號左邊的內容 提取冒號右邊的內容)
# 字典取值的方法 student['語文']
print(student['姓名'] + '\t' +
str(student['語文']) + '\t\t' +
str(student['數學']) + '\t\t' +
str(student['英語']) + '\t\t' +
str(student['總分'])
)
查詢資訊
elif input_world == '3':
print('查詢學生資訊')
input_name = input('請輸入你要查詢的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
print('姓名\t語文\t數學\t英語\t總分')
# 格式整齊
print(student['姓名'] + '\t' +
str(student['語文']) + '\t\t' +
str(student['數學']) + '\t\t' +
str(student['英語']) + '\t\t' +
str(student['總分'])
)
break # 跳出回圈
else:
print('學生資訊有誤, 查詢資訊失敗')
洗掉資訊
elif input_world == '4':
print('洗掉學生資訊')
input_name = input('請輸入你要洗掉的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
# 串列如何洗掉元素
# pop 彈出串列元素 并且洗掉
student_info.remove(student)
print(student['姓名'], '資訊洗掉成功')
break
else:
print('學生資訊有誤, 洗掉資訊失敗')
修改資訊
elif input_world == '5':
print('修改學生資訊')
input_name = input('請輸入你要修改的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
chinese = input('請重新輸入語文成績: ')
math = input('請重新輸入數學成績: ')
english = input('請重新輸入英語成績: ')
total = int(chinese) + int(math) + int(english)
student['語文'] = chinese
student['數學'] = math
student['英語'] = english
student['總分'] = total
break
else:
print('學生資訊有誤, 修改資訊失敗')
退出
elif input_world == '0':
print('退出系統')
break
完整代碼
msg = """**************************************************
歡迎使用【學生資訊管理系統】V1.0
請選擇你想要進行的操作
1. 新建學生資訊
2. 顯示全部資訊
3. 查詢學生資訊
4. 洗掉學生資訊
5. 修改學生資訊
0. 退出系統
**************************************************"""
student_info = [
{'姓名': '木子', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
{'姓名': '巳月', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
{'姓名': '婧琪', '語文': 60, '數學': 60, '英語': 60, '總分': 180},
]
# 死回圈
while True:
print(msg) # 輸出函式 print
input_world = input('請輸入你想要進行的操作: ')
if input_world == '1': # 判斷 input_world(輸入的內容) 是否 等于 1
print('新建學生資訊')
name = input('請輸入學生的姓名: ')
chinese = input('請輸入學生的語文成績: ')
math = input('請輸入學生的數學成績: ')
English = input('請輸入學生的英語成績: ')
total = int(chinese) + int(math) + int(English) # 總分 轉整型
dit = {
'姓名': name,
'語文': chinese,
'數學': math,
'英語': English,
'總分': total,
}
student_info.append(dit)
elif input_world == '2':
print('顯示全部資訊')
print('姓名\t語文\t數學\t英語\t總分')
for student in student_info:
print(student['姓名'] + '\t' +
str(student['語文']) + '\t\t' +
str(student['數學']) + '\t\t' +
str(student['英語']) + '\t\t' +
str(student['總分'])
)
elif input_world == '3':
print('查詢學生資訊')
input_name = input('請輸入你要查詢的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
print('姓名\t語文\t數學\t英語\t總分')
# 格式整齊
print(student['姓名'] + '\t' +
str(student['語文']) + '\t\t' +
str(student['數學']) + '\t\t' +
str(student['英語']) + '\t\t' +
str(student['總分'])
)
break # 跳出回圈
else:
print('學生資訊有誤, 查詢資訊失敗')
elif input_world == '4':
print('洗掉學生資訊')
input_name = input('請輸入你要洗掉的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
# 串列如何洗掉元素
# pop 彈出串列元素 并且洗掉
student_info.remove(student)
print(student['姓名'], '資訊洗掉成功')
break
else:
print('學生資訊有誤, 洗掉資訊失敗')
elif input_world == '5':
print('修改學生資訊')
input_name = input('請輸入你要修改的學生姓名: ')
for student in student_info:
if student['姓名'] == input_name:
chinese = input('請重新輸入語文成績: ')
math = input('請重新輸入數學成績: ')
english = input('請重新輸入英語成績: ')
total = int(chinese) + int(math) + int(english)
student['語文'] = chinese
student['數學'] = math
student['英語'] = english
student['總分'] = total
break
else:
print('學生資訊有誤, 修改資訊失敗')
elif input_world == '0':
print('退出系統')
break
else:
print('請輸入正確的操作')
三、打包exe可執行程式
首先安裝一下這個模塊Pyinstaller , win+r打開搜索框,輸入cmd回車打開命令提示符視窗,

輸入pip install Pyinstaller即可安裝成功,

你的代碼保存路徑盡量換成英文的,免得報錯了,
比如你的代碼放在D盤了,你就在命令提示符視窗把目錄切換到D盤,

然后輸入CD +空格+你的檔案地址,比如我放在D盤的666檔案夾了,

這時候開始打包,在命令提示符視窗輸入pyinstaller -F -w加上你的代碼檔案名,一定帶上后綴.py

這里解釋一下,-F 是生成exe檔案的,一定要用大寫,不然會失敗;-w大寫小都可以,它是解決打包成功后運行exe檔案會閃黑框問題,盡量加上,你也不想發給別人裝逼的時候被挑刺吧,
然后回車開始打包

打開dist檔案夾,你打包好的檔案就放在這里咯~


運行一下看看

新建資訊

查詢資訊

好家伙,是不是簡簡單單! 兄弟們,動動小手點個贊關注一下唄~
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/378213.html
標籤:python
