学习python仅此一篇就够了(内置模块)

内置模块

导入模块

import 关键字导入 --------- import math

import 模块名称 as alias(别名)

import hashlib as h (给hashlib起别名)

from 包 import 模块名称

random模块

该模块主要用来产生随机数(伪随机数,计算机产生不了真正的随机数,是依靠算法来计算的)

方法说明
randint()产生随机整数[m,n]
random()产生一个0~1内的随机数[0,1) random.random() 可以乘10取整得到0·9的整数
uniform(a,b)产生基于正态分布的随机数(一般用不到)
randrange(a)产生一个范围的随机数
choice()在序列(有序的,set是无序的)中随机筛选一个元素 ls=[1,2,3,4,5,6,7,8,9] random.choice(ls) s = {1,2,3,4,5,6,7} random.choice(s)-----报错
#产生随机整数
print(random.randint(1,100)) #产生一个0~1内的随机数[0,1)
print(random.random())#产生基于正态分布的随机数
print(random.uniform(1,100)) #58.09451352231632#产生一个范围的随机数
for i in range(1, 10):print(random.randrange(1, 10, 3))#在序列(**有序的**,set是无序的)中随机筛选一个元素 
lst = [i for i in range(1, 11)]
print(lst) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(random.choice(lst)) #9

math模块

math主要的作用是数学运算

方法说明
ceil(天花板的意思) 向上取整
floor向下取整 注意:四舍五入(全局函数中的round)
e属性 自然常数
fabs求绝对值 等价于全局函数abs()
fmod求模
isnan判断是不是一个数字(是数字返回flase nan---not a number)
isfinite判断是不是无限
pi圆周率
pow()幂次方
sqrt根号 开平方根
print(math.pow(2, 3)) #计算2的3次方print(math.ceil(9.001)) #找最接近的最大的整数10print(math.floor(9.9999)) #找最接近的最小的整数9print(math.sqrt(4))  #2.0print(pow(2,3)) #8from math import pi
print(pi) #3.141592653589793

OS模块

操作的是系统的文件系统

os.system("cls")-----清屏

方法说明
chdir(path)修改当前工作目录 os.chdir("c:\")------os.chdir("..") ,一般不会更改
curdir获取当前目录 属性 注意返回的是相对路径 (绝对路径os.path.abspath(os.curdir))
chmod()修改权限 主要用在linux,help(os.chmod)(不做演示)
close关闭文件路径(不做演示)
cpu_count()返回cpu的核 对应线程数(2核4线程)
getcwd()获取当前路径,返回的是绝对路径 ,相当于linux的pwd 如: os.getcwd()
getpid()获取当前进程的进程编号(任务管理器---详细信息)
getppid()获取当前进程的父进程的进程编号
kill()通过进程编号杀死进程(明白就行)
linesep对应系统下的换行符
listdir()返回对应目录下的所有文件及文件夹(隐藏文件也可以调取出来),返回的是列表os.listdir("C:\test")
makedirs()创建目录,支持创建多层目录(文件夹)os.makedirs("a/b/c/d")
mkdir创建目录,只支持一层创建,不能创建多层
open创建文件,等价于全局函数open (IO流详细讲)
pathsep获取环境变量的分隔符 windows ; linux :
sep路径的分割符 windows \ linux /
remove(文件名或者路径)删除文件 os.remove(b.text)
removedirs()移除指定目录,当前目录如果不是空的,不能移除
system执行终端命令

os.path模块

先引入Import os 模块,在os模块里面有个很重要的模块path,要注意path是一个子模块,可以通过help(os.path)查看帮助文档

那么此模块的导入方式:先导入os模块,使用dir(os.path);其次可以直接import os.path导入模块;import os.path as p ----------dir(p);from os import path

方法说明
abspath(相对路径)返回路径对应的绝对路径(完整的路径) path.abspath(".")
altsep查看python中的各种符号
basename文件名称,shell编程里面也有 path.basename("路径")
dirname文件所在的目录,shell编程里面也有
exists判断文件或者目录是否存在(特别有用,使用爬虫爬取数据的时候需要判断是否有这个文件或者文件夹)
getctime创建时间(不做演示)
getmtime修改时间(不做演示)
getsize获取文件的大小,单位是字节
isdir判断path是不是目录(文件夹)
isfile判断path是不是文件
isabs判断是不是绝对路径(不演示)
islink判断是不是连接(不演示)
ismount判断是不是挂载文件(Linux下要用的)(不演示)
join (p1,p2)拼接路径 name="123.txt" url="C:/a/b/c" url +"/"+name path.jion(url,name)
sep路径分隔符 url + path.sep +name
split分割或拆分当前路径 os.path.split("C://desktop")
realpath返回真实路径 和abspath一样
print(os.path.abspath('123321.py')) 
#用于获取文件或目录的绝对路径.D:\789\python\123321.pyprint(os.path.exists('closure.py'))
#用于判断文件或目录是否存在,如果存在返回True,否则返回Falseprint(os.path.join('E\\Python', '123321.py')) 
#将目录与目录或文件名拼接起来,E\Python\123321.pyprint(os.path.split('D:\\789\\python\\123321.py'))  
#目录与文件进行拆分,('D:\\789\\python', '123321.py')print(os.path.splitext('study2.py'))  
#分离文件名和扩展名,('study2', '.py')print(os.path.basename('D:\\789\\python\\123321.py'))   
#从一个目录中提取文件名,123321.pyprint(os.path.dirname('D:\\789\\python\\123321.py'))   
# 从一个路径中提取文件路径,不包括文件名,D:\789\pythonprint(os.path.isdir('D:\\789\\python\\123321.py'))   
#判断是否为路径,FALSE

 

import os
# 查找指定目录下的.py文件
path = os.getcwd()   
lst = os.listdir(path)
for filename in lst:if filename.endswith('.py'):print(filename)
#tr_data.py
study(random).py
study(requests).py
study1.py
study2.py
try except.py
tuple list bytes.py
with read,write.py

time模块

Python提供的一个 time模块来格式化时间,在python爬虫等应用中相当有用

print(dir(time))
方法说明
asctime()获取当前时间
ctime()获取当前时间
localtime()获取本地时间 返回的是对象,方便自己完成格式化 ltiem = time.localtime() ltiem.tm_year print("%s-%s-%s %s:%s:%s" % (ltiem.tm_year, ltiem.tm_mon, ltiem.tm_mday, ltiem.tm_hour, ltiem.tm_min, ltiem.tm_sec))
sleep(1)表示休眠时间,单位是秒
time()获取当前系统的时间戳,单位是秒(计算机从1970年0时0分0秒到现在秒数)
strftime()将时间对象格式化为字符串 f---format help(time.strftime) time.strftime("%Y-%m-%d")
strptime()将一个特定格式的时间字符串转换成时间对象 help(time.strptime) s="2019-08-03 07:35:35" type(s) time.strptime(s,"%Y-%m-%d %H:%M:%S")

 

print(time.asctime()) #Sun Jan 14 11:43:47 2024print(time.ctime())#Sun Jan 14 11:43:47 2024print(time.localtime()) #time.struct_time(tm_year=2024, tm_mon=1, tm_mday=14, tm_hour=11, tm_min=44, tm_sec=40, tm_wday=6, tm_yday=14, tm_isdst=0)print(time.sleep(3)) #休眠时间print(time.time()) #1705203956.5750122print(time.strftime("%Y-%m-%d")) #2024-01-14

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/621059.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

统信UOS_麒麟KYLINOS上使用Remmina远程Windows并传输文件

原文链接:统信UOS/麒麟KYLINOS上使用Remmina远程Windows并传输文件 hello,大家好啊!继之前我们讨论了在统信UOS/麒麟KYLINOS与Windows之间通过Open SSH实现文件传输之后,今天我要给大家带来的是如何使用Remmina软件在统信UOS/麒麟…

第二百六十五回

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了Flutter中如何使用三方包相关的内容,本章回中将介绍Widget的生命周期.闲话休提,让我们一起Talk Flutter吧。 概念介绍 本章回中介绍的生命周期是指Widget从创建到结果的整个过程,这…

12.2内核空间基于SPI总线的OLED驱动

在内核空间编写SPI设备驱动的要点 在SPI总线控制器的设备树节点下增加SPI设备的设备树节点,节点中必须包含 reg 属性、 compatible 属性、 spi-max-frequency 属性, reg 属性用于描述片选索引, compatible属性用于设备和驱动的匹配&#xff…

【数据结构】树和二叉树堆(基本概念介绍)

🌈个人主页:秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343🔥 系列专栏:《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​​ 目录 前言 树的概念 树的常见名词 树与…

linux TIME_WAIT时间变短

在Linux中,TIME_WAIT状态表示TCP连接已经关闭但还未完全清除的过程。默认情况下,TIME_WAIT状态会持续2分钟(120秒)以确保网络上没有重复的数据包被传输到错误的目标地址。 要将TIME_WAIT时间设置为更短的值,可以通过修…

2024.1.14每日一题

LeetCode 83.删除排序链表中的重复元素 83. 删除排序链表中的重复元素 - 力扣(LeetCode) 题目描述 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 示例 1: 输…

手把手教你学会接口自动化系列十-将用例写在json中,持久化管理起来上

我们之前写的把url,登录都封装了,但是用例的数据怎么用其他文件管理起来,和代码分离呢?由次,我就行了json进行用例的管理。 从接口的角度我们分析,我们都知道接口请求有以下几方面: url method headers data 由次我将我的用例管理格式设置成下面的 {"url"…

关闭免费版pycharm社区版双击shift时出现的搜索框

Pycharm 在双击 shift 的时候总是弹出搜索框,但作为中国玩家,经常需要双击 shift 循环切换中英文。这就很困恼。 下面就解决这个问题。单独关闭双击shift的功能。 步骤 1.左上角 File -> Settings 2. 如图,输入‘advan’ 找到高级设置&…

基于AidLux的智慧教育版面分析应用

基于AidLux的智慧教育版面分析应用 1. Aidlux平台介绍 融合架构操作系统AidLux,可以为单一ARM设备同时提供Android和Linux运行环境,双系统既能独立使用又能相互通信。 非虚拟机方式实现双系统融合并行 同时拥有两个系统的完整用户体验无需重启即可在两个系统之间…

RibbonGroup 添加QRadioButton

RibbonGroup添加QRadioButton: QRadioButton * pRadio new QRadioButton(tr("Radio")); pRadio->setToolTip(tr("Radio")); groupClipboard->addWidget(pRadio); connect(pRadio, SIGNAL(clicked(…

扩展卡尔曼滤波(Extended Kalman Filter, EKF):理论和应用

扩展卡尔曼滤波(Extended Kalman Filter, EKF):理论、公式和应用 引言 卡尔曼滤波是一种广泛应用于估计动态系统状态的技术,但当系统的动态模型或测量模型是非线性的时候,传统的卡尔曼滤波方法就显得无能为力。扩展卡…

Ubuntu中用useradd创建用户后无法用su切换过去

原因: 没有设置密码,没有指定家目录和shell版本,就不能su切换到新用户 解决方法: su - root //切换到root权限 useradd -m -s /bin/bash node1 //-m自动创建home目录,-s指定shell版本 passwd node1 //设置密码 参考链…

springboot(ssm单位考勤系统 oa办公系统Java系统

springboot(ssm单位考勤系统 oa办公系统Java系统 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0) 数据库工…

【保姆级教程|YOLOv8添加注意力机制】【1】添加SEAttention注意力机制步骤详解、训练及推理使用

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

SpringBoot+thymeleaf实战遇到的问题

目录 一、控制台: 二、数据库查询异常: 三、前后端错误校验 四、在serviceImp中需要添加一个eq条件,表示和数据库中的哪个字段进行比较,否则会查出所有数据,导致500 五、使用流转换数据更简洁 六、重复报错&…

动态规划篇-03:打家劫舍

198、打家劫舍 状态转移方程 base case 边界问题就是:走到最后一间房子门口也没抢,那么最终抢到的金额为0 明确状态 “原问题和子问题中会变化的变量” 抢到的金额数就是状态,因为随着在每一件房子门口做选择,抢到的金额数会随…

大模型训练营Day3 基于 InternLM 和 LangChain 搭建你的知识库 作业

本篇记录大模型训练营第三次的作业,属实是拖延症本症患者。 主要步骤前面的安装各种包和依赖如前面作业一样,按照文档操作即可: 再按照文档进行各种克隆,把知识库复制到本地: 复制粘贴操作文档中的构建向量数据库的文…

七:Day08_任务调度

第一章 定时任务概述 在项目中开发定时任务应该一种比较常见的需求,在 Java 中开发定时任务主要有三种解决方案:一是使用JDK 自带的 Timer,二是使用 Spring Task,三是使用第三方组件 Quartz。 建议: 单体项目架构使用…

基于51单片机的智能热水器设计

需要全部文件请私信关注我!!! 基于51单片机的智能热水器设计 摘要一、绪论1.1 选题背景及意义1.2 完成目标与功能设计 二、硬件系统设计2.1 硬件完成要求2.2 方案选择2.3 电源电路设计2.4 键盘电路2.5 蜂鸣器报警电路2.6 温度检测电路2.7 红…

UR5机械臂控制

1.ros环境安装 快速安装命令:wget http://fishros.com/install -O fishros && . fishros 2.ur驱动安装 虚拟机Ubuntu16.04ros-kinetic控制真实UR5机械臂总结记录ros kinetic控制UR3机械臂 3.ur命令行控制 使用了 URScript 语言来描述机器人的运动指令&…