常用模块补充
os模块
os.name 操作系统的版本 win10/11属于nt10.x
os.curdir当前工作目录
os.listdir()展示当前工作目录下所有文件
os.environ 环境变量
os.getcwd() 获取当前工作目录
os.mkdir()创建目录
os.rmdir()删除目录类似于windows中的资源管理器
os.listdir() 列出某个目录下所有文件
os.cpu_count()
os.path
os.path.getsize("路径")读取文件大小
random模块:import random
from random import random, randint, choice, sample
第二种不用在前面加random了
random.randint()返回一个随机整数
random.choice 从不为空的序列中取一个随机元素
random.choices([], k=2)取两个元素 可能取重复
可以给权重改概率([], weights[1, 2, 3, 4, 5], k =)
数字就是对应序列的权重
random.sample([], weights[], k =)不会重复
(['red', 'blue'], counts=[4,2], k=5 )red重复4次blue2
random.randrange(1, 10)
impory time 和时间相关
time.localtime(#当地时间) gmtime(是UTC的时间)
time.time()
time.sleep()停几秒
time.timezone 东八区,指定一个时间格式去输出
time.clock()
time.strftime()输入一个时间元组
time.asctime()默认展示当前时间的格式
time.ctime()
time.mktime()
函数
def 函数名(参数)
代码
def print_info():
print("")
用的时候
print_info()
返回值用return
返回多个值用一个值接收的时候 收到的是元组
多个值接收一个值时都收到
python中不支持函数的重载
函数的重载:同一个函数名,不同的参数个数或类型
python不支持
arg_function(arg=1, arg2=2)关键字参数
函数定义中有arg1就有 没有就赋值1
混合(1,arg2=2)位置参数在关键字参数之前的
把位置参数放后边就语法错误了
*args :代表多个参数
def args_test(arg1, *args):
???
可以往后面那个传一堆 变成元组
*args记得放最后,,,,#可以随便起名字记得带星号就行
**keargs 接收的是多个关键字参数
如果要定义一个函数,不确定它传入参数的个数
def function_name(*args, **kwargs):
???
随便传参数
/它只是限定:在/之前的参数,必须以位置参数的形式传递
*它也只是限定,在*之后的参数,必须以关键字参数的形式传递
work
一、随机数
1.随机一个1-10之间的小数
2.随机一个99-999之间的整数
3.从列表出随机一个元素
4.从列表中随机两个元素
#1
import random
print(random.uniform(1, 10))
#2
print(random.randint(99, 999))
#3
print(random.choice([1, 2, 3, 4, 5, 6]))
#4
print(random.choices([1, 2, 3, 4, 5, 6], k=2))
二、函数:
1. 定义一个函数,且有一个参数
函数功能:取得传入字符串的第一个字符和最后一个字符
并返回
def starend (i):
return i[0], i[-1]
print(starend("happy"))
2. 定义一个函数:可以接收一个参数或多个位置参数,参数的个数不定
传入多个参数:包含整型,浮点型,
功能:计算所有参数的和, 然后返回
def sum (*args):
result = 0
while args:
result = result + args[0]
args = args[1:] #删掉第一个元素
return result
print(sum(1, 3, 4, 3.0, 6))
3. 定义一个函数:可以接收一个或多个关键字参数,参数的个数不定
传入多个参数
功能:输出所有关键字参数的key和value
def keyvalue(**kwargs):
return kwargs.keys(), kwargs.values()
print(keyvalue(a="1", b=2))
4. 定义一个函数,2个位置参数,2个关键字参数
功能:打印所有参数
a.全部以关键字参数的形式传参
b.全部以位置参数的形式传参
c.以位置参数和关键字混合的形式传参
d.带默认值的参数不传,只传位置参数
#a
print(prtarg(a=1, b=3, c=4))
#b
print(prtarg(1, 3, "t", 4))
#c
print(prtarg(1, "u", i=3))
5.定义一个函数:总共有四个参数:
前两个参数,只能已位置参数传入
后两个参数,只能已关键字参数传入
def limit(, /, a, b, *, c, d):
return a, b, c, d