Python第八章(北理国家精品课 嵩天等)
程序设计方法
8.1体育竞技分析实例
from random import random
def printIntro():
print("这个程序模拟两个选手A和B的某种竞技比赛")
print("程序需要运行A和B的能力值(以0到1之间的小数表示)") def getInputs():
a = eval(input("请输入选手A的能力值(0-1): "))
b = eval(input("请输入选手B的能力值(0-1): "))
n = eval(input("模拟比赛的场次: "))
return a,b,n #模拟n局比赛 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 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 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()
8.2Python程序设计思维
8.3第三方库安装
f1:pip安装方法
常用指令:
1.pip install <第三方库名>
2.pip install -U <第三方库名> 更新版本
3.pip uninstall <第三方库名>
4.pip download <第三方库名> 下载不安装
5.pip show <第三方库名> 列出某个指定第三方库的详细信息
6.pip search <关键词> 搜索相关第三方库
7.pip list 列出当前系统已经安装的第三方库
f2:集成安装方法
Anaconda https://www.anaconda.com/
f3:文件安装方法
UCI页面:https://www.lfd.uci.edu/~gohlke/pythonlibs/
8.4os库的基本使用
与操作系统相关
1.路径操作
os.path子库以path为入口,用于操作和处理文件路径
import os.path
#os.path as op
os.path.abspath(path) 返回path在当前系统的绝对路径
os.path.normpath(path)归一化path的表示形式,统一用\\分隔路径
os.path.relpath(path)返回当前程序与文件之间的相对路径
os.path.dirname(path)返回path中的目录名称
os.path.basename(path)返回path中最后的文件名称
os.path.join(path,*paths)组合path与paths,返回一个路径字符串
os.path.exits(path)判断path对应文件或目录是否存在,返回True或False
os.path.isfilepath(path)判断path对应是否为已存在的文件 os.path.isdirpath(path)判断path对应是否为已存在的目录
os.path.getatime(path)返回path对应文件或目录上一次的访问时间
os.path.getmtime(path)返回path对应文件或目录最近一次的修改时间
os.path.getctime(path)返回path对应文件或目录的创建时间 time.ctime()
os.path.getsize(path)返回path对应文件的大小,以字节为单位
2.进程管理
os.system(command)执行程序或命令command
3.环境参数
os.chdir(path) 修改当前程序操作的路径
os.getcwd() 返回程序的当前路径
os.getlogin()获得当前系统登录用户名称
os.cpu_count()获得当前系统的cpu数量
os.urandom(n) 获得n个字节长度的随机字符串,通常用于加解密运算
8.5第三方库自动安装脚本
Python第八章(北理国家精品课 嵩天等)的更多相关文章
- Python第六章(北理国家精品课 嵩天等)
一 1.集合类型定义及其操作: 集合用{}表示,元素用逗号分隔,无序,唯一 集合操作符: |:并 -:减 &:交 ^ :补 <= <:判断子集关系 >= >:判断包含关 ...
- Python第七章(北理国家精品课 嵩天等)
7.1文件的使用 1.1文本类型 文本文件:由单一特定编码组成的文件,如.txt 二进制文件:如.png,.avi 1.2文件的打开和关闭 打开-操作-关闭 <变量名> = open(&l ...
- Python第四章(北理国家精品课 嵩天等)
一.程序的分支结构 二.身体质量指数BMI #CalBIv1.py height,weight = eval((input("请输入身高(米)和体重\(公斤)[逗号隔开]:"))) ...
- Python第二章(北理国家精品课 嵩天等)
一.深入理解Python语言 语法简洁 >13万第三方库 二.Python蟒蛇绘制 #PythonDraw.py import turtle turtle.setup(650,350,200,2 ...
- Python第五章(北理国家精品课 嵩天等)
函数和代码复用 函数的定义和使用 def <函数名>(<参数(0个或多个)>): <函数体> return <返回值>可选参数放在不可选参数之后*b不定 ...
- Python第三章(北理国家精品课 嵩天等)
一.数字类型及其操作 整数:pow(x,y),想算多大,就算多大:以0b或0B开头表示二进制:以0o或0O开头表示八进制:以0x或0X开头表示十六进制. 浮点数:取值范围-10^308至10^308, ...
- Python第一章(北理国家精品课 嵩天等)
1.1程序设计基本方法 IPO 分析问题,划分边界,设计算法: 编写程序,调试测试,升级维护. 1.2Python开发环境配置 1.3实例1:温度转换 1.4Python程序语法元素分析 缩进,#添加 ...
- 【学习笔记】PYTHON语言程序设计(北理工 嵩天)
1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则 摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...
- Python处理json数据--世界国家维度数据
1.准备国家的json数据 将准备好的json数据放在指定的目录下,此处可以重这里下载 2.测试编写python脚本处理json提取字段值 #coding:utf8 import time, re, ...
随机推荐
- Vue 组件的使用
1.引入组件 import Week from '../week/main.vue' export default { name: "classMain", components: ...
- hbase的api操作之scan
扫描器缓存---------------- 面向行级别的. @Test public void getScanCache() throws IOException { Configu ...
- Confluence 6 在升级之前
在这个指南中,我们将会与你一同对最新的 Confluence 站点在 Windows 或者 Linux 平台进行安装和更新. 如果你的 Confluence 安装实例是当前的许可证的话,那么对 Con ...
- 【堆】【洛谷例题】p1090 p1334 p1177
(都是比较简单的典型的而且都是小根堆的例题) p1090 合并果子[传送门] 算法分析:要尽量使用最小的体力合并完所有果子,那么每次合并的两堆果子应该是这所有堆中最小的一个(因为越先合并的堆要被算的次 ...
- discuss!X3.4 帖子显示昵称而不是用户名的解决办法
问题:dedecmsV5.7和discuz!X3.4整合之后,实现免激活登陆之后,从dede过来的用户在discuz 直接展示的用户名,因为我们的用户名是手机号,所以不想帖子都展示的是用户名. 因为我 ...
- 嵌套if-esle语句
C语言自学之嵌套if-esle语句 Dome : 获奖条件为年销售业绩100万以上,并且入职满两年的员工.小明进入公司1年,销售业绩为120万. 在代码编辑器中使用嵌套if-else语句判断小明是否有 ...
- web service 上传file说明
之前做过一个接口,PI发布WEB SERVICE给对方调,传附件到SAP... 接口中包含文件名称,文件类型,文件流... 1.SOAPUI新建项目: 文件内容的地方会自动带上一个ID,这个ID对应文 ...
- 维修数列 Splay(这可能是我写过最麻烦的题之一了。。。用平衡树维护dp。。。丧心病狂啊。。。。)
题目来源BZOJ1500 这题的思路: 1.这题的话,稍微会splay的人,一般前面四个都不是问题..主要是最后的一个,要你在修改的同时要维护好最大字段和... 2.最大字段和其实就是区间合并.具体操 ...
- vue-cli(vue脚手架) 简单使用
1.vue-cli 作用 vue-cli作为vue的脚手架,可以帮助我们在实际开发中自动生成vue.js的模板工程. 2.vue-cli 使用 a. 安装全局vue-cli npm install v ...
- idea 中add configuration
记住:点击“+”号配置tomcat 第一步当然先得建一个web项目 1.file -> new -> project -Next -> Finish -项目建好了接下来就是配置了 - ...