day25-2 random,os,sys模块
random
import random
为什么要有random模块,random模块有什么用
- 生成随机数
1.random() (重要)
- 生成(0,1)之间的小数
print(random.random())
0.8539941231497675
2.randint (重要)
- 生成[n,m]之间的整数
print(random.randint(1, 3))
1
3.uniform
- 生成(n,m)之间的小数
print(random.uniform(1, 3))
1.6985411313422285
4.randrange
- 生成[n,m)之间的整数
print(random.randrange(1, 3))
2
5.choice(重要)
- 从容器中随机抽取一个
# 某些抽奖代码
count = 0
while True:
res = random.choice([10000, 20, 30, 50])
count += 5000
if count = 15000: # 抽到15000必中10000
print('恭喜你获得10000元大奖')
count = 0
break
if res == 10000: # 中了也不算
print('再来一次')
continue
print(f'恭喜你获得{res}')
print('nick 获得10000元现金大奖') # 假弹幕
print('tank 获得10000元现金大奖')
print('sean 获得10000元现金大奖')
6.sample
- 从容器中抽取多个
print(random.sample(['a','b','c'], 2))
['a', 'b']
7.shuffle (重要)
- 打乱容器
lis = [1, 2, 3, 4]
random.shuffle(lis)
print(lis)
[3, 4, 2, 1]
os
import os
为什么要有os模块,os模块有什么用
- os模块和操作系统交互,实现文件操作
| 方法名 | 作用 |
|---|---|
| mkdir | 创建文件夹 |
| removedirs | 删除空文件夹,并且递归往上删除空文件夹 |
| rmdir | 删除一个空文件夹 |
| environ | 打印系统的环境变量 |
| getcwd | 当前项目路径(和下面的区别是下面可以嵌套) |
| path.dirname(重要) | 返回当前文件的路径(用在执行文件添加环境变量) |
| listdir (重要) | 列出文件夹内所有文件名和隐藏文件名 |
| remove (重要) | 删除文件 |
| rename (重要) | 重命名文件名(old_file,new_file) |
| path.exists(重要) | 判断文件是否存在 |
| path.join (重要) | 根据不同的系统,进行路径拼接 |
| getsize(重要) | 计算文件大小 |
| walk (重要) | 打印文件夹下所有文件夹和文件 |
| path.abspath() (重要) | 获取某个文件的绝对路径 |
- 记住路径前面加个
r
print(os.path.dirname(__file__)) # 获取当前路径
print(os.path.abspath(__file__)) # 获取当前文件的绝对路径
sys
import sys
为什么要有sys模块,sys模块有什么用
- 与Python进行交互
1.argv(重要)
- 返回一个列表,自身路径是列表的第一个元素,后面可以加参数
print(sys.argv)
['M:\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py', '-f', 'C:\\Users\\Y\\AppData\\Roaming\\jupyter\\runtime\\kernel-6df28ba4-0f6a-4dd6-baa5-ae7512f3fa50.json']
2.hexversion
- 获取解释器的版本
print(sys.hexversion)
50726384
3.path(重要)
- 获取当前文件导入模块的路径,环境变量
print(sys.path)
['', 'M:\\Anaconda3\\python36.zip', 'M:\\Anaconda3\\DLLs', 'M:\\Anaconda3\\lib', 'M:\\Anaconda3', 'M:\\Anaconda3\\lib\\site-packages', 'M:\\Anaconda3\\lib\\site-packages\\win32', 'M:\\Anaconda3\\lib\\site-packages\\win32\\lib', 'M:\\Anaconda3\\lib\\site-packages\\Pythonwin', 'M:\\Anaconda3\\lib\\site-packages\\IPython\\extensions', 'C:\\Users\\Y\\.ipython']
4.path.append (重要)
- 添加路径到环境变量中
sys.path.append('path')
5.stdout
- 标准输出
# 这是一个用c写print的过程
sys.stdout.write('123\n')
def print(str, end='\n'):
str = str + end
sys.stdout.write(str)
123
6.stdin
- 标准输入
# 这是一个用c写输入的过程
print(sys.stdin.read(10))
def input():
print(sys.stdin.read(10))
return
day25-2 random,os,sys模块的更多相关文章
- python 常用模块之random,os,sys 模块
python 常用模块random,os,sys 模块 python全栈开发OS模块,Random模块,sys模块 OS模块 os模块是与操作系统交互的一个接口,常见的函数以及用法见一下代码: #OS ...
- python笔记-1(import导入、time/datetime/random/os/sys模块)
python笔记-6(import导入.time/datetime/random/os/sys模块) 一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其 ...
- python笔记-6(import导入、time/datetime/random/os/sys模块)
一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其它内容待日后有深入理解了再来细说 1.import可以导入的两种不同的内容 1.1 *.py文件结尾的文件 ...
- day19:常用模块(collections,time,random,os,sys)
1,正则复习,re.S,这个在用的最多,re.M多行模式,这个主要改变^和$的行为,每一行都是新串开头,每个回车都是结尾.re.L 在Windows和linux里面对一些特殊字符有不一样的识别,re. ...
- 常用模块random/os/sys/time/datatime/hashlib/pymysql等
一.标准模块 1.python自带的,import random,json,os,sys,datetime,hashlib等 ①.正常按照命令:打开cmd,执行:pip install rangdom ...
- 模块random+os+sys+json+subprocess
模块random+os+sys+json+subprocess 1. random 模块 (产生一个随机值) import random 1 # 随机小数 2 print(random.rando ...
- Python全栈--7模块--random os sys time datetime hashlib pickle json requests xml
模块分为三种: 自定义模块 内置模块 开源模块 一.安装第三方模块 # python 安装第三方模块 # 加入环境变量 : 右键计算机---属性---高级设置---环境变量---path--分号+py ...
- Python常用模块(time, datetime, random, os, sys, hashlib)
time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp) : 通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运 ...
- 模块:time,random,os,sys
时间模块 import time # print(time.time()) #时间戳 # print(time.strftime('%Y-%m-%d %X')) #格式化字符 # print(time ...
随机推荐
- 数位dp题集
题集见大佬博客 不要62 入门题,检验刚才自己有没有看懂 注意一些细节. 的确挺套路的 #include<bits/stdc++.h> #define REP(i, a, b) for(r ...
- 读取com口接收byte数据的处理
procedure Tfrm_CheckCloth.cnrs232ReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word); ...
- Spring Cloud-Bus(十二)
说明 用于分布式上所有微服务都连接到消息总线上面.进行统一的通知 Config动态刷新 configClient configClient通过/actuator/bus-refresh端点通知消息总线 ...
- java反射并不是什么高深技术,面向对象语言都有这个功能,而且功能也很简单,就是利用jvm动态加载时生成的class对象
java反射并不是什么高深技术,面向对象语言都有这个功能. 面向对象语言都有这个功能,而且功能也很简单,就是利用jvm动态加载时生成的class对象,去获取类相关的信息 2.利用java反射可以调用类 ...
- fputs与fgets
1. fputs 函数名: fputs 功 能: 送一个字符到一个流中 用 法: int fputs(char *string, FILE *stream); 说明: fputs是一 ...
- swift初始化
swift初始化 class INIT: NSObject { // 一个结构体的初始化 // 1.存储属性的初始化 struct Fahrenheit { var temperature :Doub ...
- ZOJ 1654 Place the Robots(最大匹配)
Robert is a famous engineer. One day he was given a task by his boss. The background of the task was ...
- 为大家推荐一本书《jQuery Mobile 即学即用》
这是人民邮电出版社出版的一本面向前端开发者的书. 非常喜欢书名"即学即用"这是每一个程序开发者的理想模式. 不同国家的人有不同的思维方式.这本书的作者是 [阿根廷] Maximil ...
- 【转】selenium自动化测试环境搭建
转:http://blog.csdn.net/mao1059568684/article/details/17347853 第一步 安装JDK JDk1.7. 下载地址:http://www.orac ...
- 编程算法 - 数组中的逆序对 代码(C)
数组中的逆序对 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 在数组中的两个数字假设前面一个数字大于后面的数字, 则这两个数字组成一个逆序对. ...