文章目錄
一.實例:體育競技分析
(1)實例概述
- 需求:毫釐是多少?如何科學分析體育競技比賽
- 輸入:球員水平
- 輸出:可預測的比賽成績
(2)程序框架及步驟
- 第一:打印程序的介紹性信息式
- 第二:獲得程序運行參數:proA,proB,n
- 第三:利用球員A和B的能力值,模擬n局比賽
- 第四:輸出球員AB獲勝比賽的場次及概率
(3)具體代碼
from random import random
def printIntro():
print("這個程序模擬兩個選手AB的某種競技比賽")
print("這個需要AB的能力值(用0到1之間的小數來表示)")
def getInputs():
a = eval(input("請輸入A選手的能力值(0-1):"))
b = eval(input("請輸入B選手的能力值(0-1):"))
n = eval(input("模擬比賽的場次:"))
return a,b,n
def simNGames(n,probA,probB):
winsA,winsB = 0,0
for i in range(n):
scoreA,scoreB = simOneGame(probA,probB)
if scoreA > scoreB:
winsA += 1
else:
winsB += 1
return winsA,winsB
def gameOver(a,b):
return a==15 or b==15
def simOneGame(probA,probB):
scoreA,scoreB = 0,0
serving = "A"
while not gameOver(scoreA,scoreB):
if serving == "A":
if random() < probA:
scoreA += 1
else:
serving = "B"
else:
if random() < probB:
scoreB += 1
else:
serving = "A"
return scoreA,scoreB
def printSummary(winsA,winsB):
n = winsA + winsB
print("競技開始,共模擬{}場比賽".format(n))
print("選手A獲勝{}場比賽,佔比{:0.1%}".format(winsA,winsA/n))
print("選手B獲勝{}場比賽,佔比{:0.1%}".format(winsB,winsB/n))
def main():
printIntro()
probA,probB,n = getInputs()
winsA,winsB = simNGames(n,probA,probB)
printSummary(winsA,winsB)
main()
(4)運行結果
二.python程序設計思維
2.1 計算思維與程序設計
2.2 計算生態與python語言
2.3 用戶體驗與軟件產品
2.4 基本的程序設計模式
三.python第三方庫安裝
3.1 看見更大的python世界
(1)python社區 > 13萬個第三方庫 > https:pypi.org/
(2)實例:開發與區塊鏈相關的程序
3.2 第三方庫的pip安裝方法
(1)pip安裝方法
(2)常見的pip指令
D:\pip install <第三方庫名> //安裝指定第三方庫
D:\pip install -u <第三方庫名> //使用-U標籤更新已安裝的指定第三方庫
D:\pip uninstall <第三方庫名> //卸載指定第三方庫
D:\pip download <第三方庫名> //下載但不安裝指定第三方庫
D:\pip show <第三方庫名> //列出某個指定第三方庫的詳細信息
D:\pip search <關鍵詞> //根據關鍵詞在名稱和介紹中搜索第三方庫
D:\pip list //列出當前系統已經安裝的第三方庫
3.3 第三方庫的集成安裝方法
3.4 第三方庫的文件安裝方法
四.模塊:os庫的基本使用
4.1 基本介紹
- OS庫是python標準庫,包含幾百個函數
- 常用路徑操作,進程管理,環境參數等幾類
路徑操作
:os.path子庫,處理文件路徑及信息進程管理
:啓動系統中其他程序環境參數
:獲取系統軟硬件信息等環境參數
4.2 os庫之路徑操作
os.path子庫以path爲入口,用於操作和處理文件路徑
import os.path 或 import os.path as op
4.3 os庫之進程管理
使用我們寫的程序調用外部程序
os.system(command)
- 執行程序或命令command
- 在windows系統中,返回值爲cmd的調用信息
4.4 os庫之環境參數
(1)獲取或改變系統環境信息
(2)獲取操作系統環境信息
五.實例:第三方庫自動安裝腳本
需求:批量安裝第三方庫需要人工干預,能否自動安裝
自動執行pip逐一根據需求安裝
這裏假設我們要安裝一下20個第三方庫
代碼:
import os
libs = {"numpy","matplotlib","pillow","sklearn","requests",\
"jieba","beautifulsoup4","wheel","networkx","sympy",\
"pyinstaller","django","flask","werobot","pyqt5",\
"pandas","pyopengl","pypdf2","docopt","pygame"}
try:
for lib in libs:
os.system("pip3 install "+lib)
print("Successful")
except:
print("Failed Somehow")
運行效果: