python常用模块os sys time random logging等

python 常用模块详解 目录   1、模块: 2、time &datetime模块 3、random 4、os 5、sys 6、shutil 7、shelve 8、xml处理 9、yaml处理 10、configparser 11、hashlib 12、re正则表达式 13、re.search 14、logging模块 1、模块:         定义:其实模块简单说就是一堆代码... 阅读详情

python常用模块

  1. os
!-*- coding:utf-8 -*-
#date: 2020/4/17

import os
print(os.getcwd())  #获取当前路径
os.chdir('')        # 切换工作目录
os.curdir()            # .
os.pardir               # ..
os.mkdir('gao')                 # 当前工作目录下建立单层目录 \gao
os.makedirs('gao\\qi')         # 当前工作目录下建立层级目录 \gao\qi 目录
os.rmdir('gao\\qi')                 # 只删除最后一层单层目录,只删除空路径
os.removedirs('gao\\qi')        # 删除指定路径,只删除空路径
os.listdir(r'C:\Users\gaoqifa\Desktop\study\login') # 列表形式列出路径下所有内容
os.remove('aaaa')                 # 删除文件
os.rename("study_os.py","learn_os.py")  # 重命名
print(os.stat('春晓'))
s = os.sep            # 取出路径分隔符 win:\ linux:/
os.linesep              # 取出换行符 win:/r/n linux:/n
os.pathsep                # 取出文件路径分割符 win:; Linux::
print(os.system('dir'))        # python中使用cmd或shell命令等
print(os.environ)               # 获取环境变量
print(os.path.abspath('春晓'))        #根据相对路径获取绝对路径
print(os.path.abspath(__file__))      # 获取当前py文件所在路径
print(os.path.dirname(r'c:\use\eee\ppp\login'))          # 返回输入参数上一层级文件夹的绝对路径
print(os.path.basename(r'C:use\Desktop\gao'))   # 根据引入变量,返回文件名,或最终目录名
os.path.join([r'C:use\Desktop\gao',r'qi'])  # 与字符串的join函数类似,用于连接路径
  1. sys
#!-*- coding:utf-8 -*-
#date: 2020/4/17

import sys


print(sys.argv)     # 已列表方式打印出命令行输入的值 默认第一个参数为执行文件名 》 ['C:/Users/Desktop/study/login/learn_sys.py']

if sys.argv[0] == 'post':
    print("post success")

sys.exit()          # 退出程序,正常退出时,exit(0)
print(sys.version)    # 获取当前python的版本信息  》 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)]
print(sys.path)         # 获取当前的模块使用路径
需要调用自定义模块 添加模块使用路径
sys.path.append(r'C:\User\object') # 注意 添加模块路径使用绝对路径
print(sys.platform)                     # 系统平台信息 》 win32

sys.stdout.write('please:')             # 标准输出 由于打印一般当执行完成,才会统一输出,比如用到进度条时,需要时刻刷新 故需要用到此函数
sys.stdout.flush()                      # 立即刷新标准输出
# 简单的实时进度条代码:
import time
for i in range(30):
    sys.stdout.write("#")
    sys.stdout.flush()
    time.sleep(1)

sys.argv
3. time

import time

print(time.time())          # 获取当前时间戳 1587118642.6632118
print(time.ctime())         # 获取日期时间 Fri Apr 17 18:17:22 2020
time.sleep(3)             # 系统休眠
print(time.clock())         # cpu运行时间 2e-07
print(time.gmtime())        # utc时间(本初子午线当前时间)time.struct_time(tm_year=2020, tm_mon=4, tm_mday=17, tm_hour=10, tm_min=11, tm_sec=31, tm_wday=4, tm_yday=108, tm_isdst=0)
print(time.localtime())     # 本地时区时间(中国,东八区)   time.struct_time(tm_year=2020, tm_mon=4, tm_mday=17, tm_hour=18, tm_min=11, tm_sec=31, tm_wday=4, tm_yday=108, tm_isdst=0)
print(time.strftime('%Y-%m-%d%H,%M,%S,%z')) # 自定义字符串格式 输出当前时间   !格式化时间 2020-04-1718,11,31,+0800
a = time.strptime("2020-03-01 10,10,10","%Y-%m-%d %H,%M,%S") # 自定义格式 读取字符串时间 返回结构化时间
print(a.tm_year)            #按结构话时间,获取所需  #2020
# 时间戳
print(time.mktime(a))       # 按结构化时间 获取时间戳 1583028610.0
  1. random
import random
# 建立5位的随机码
#第一种方式
def code():
    num = ''
    for i in range(5):
        add_al = chr(random.randrange(65, 91))
        add_num = str(random.randrange(0, 10))
        add = random.randrange(0, 2)
        if add == 0:
            num = "".join((num,add_al))
        else:
            num = "".join((num,add_num))

    print(num)
code()

第二种方式
def code2():
    num = ''
    for i in range(5):
        add = random.choice((chr(random.randrange(65,91)),str(random.randrange(0,10))))
        num = ''.join((num,add))
    print(num)
code2()
  1. logging
#!-*- coding:utf-8 -*-
#date: 2020/4/17

import logging

# level     默认为warning最低打印级别,可指定设置
# format    设定日志输出格式 asctime:记录时间、filename:记录记录日志的脚本文件名称、lineno:记录脚本文件的多少行执行的日志记录、levelname:日志等级名称、message:记录消息内容
# datefmt   时间格式
# filename  保存日志的文件名称 不增加filename字段默认使用终端打印方式提示,增加filename字段表示使用文件记录
# filemode  设置对文件的操作:r读 w写 a增
logging.basicConfig(level=logging.DEBUG,
                    format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s >>> %(message)s',
                    datefmt='%Y-%m-%d %H:%M:%S',
                    filename='test.log',
                    filemode='a'
                    )
logging.debug("debug")
logging.info("info")
logging.warning('warming')
logging.error("error")
logging.critical('critical')

结果:

2020-04-17 20:59:01 learn_logging.py[line:22] DEBUG >>> debug
2020-04-17 20:59:01 learn_logging.py[line:23] INFO >>> info
2020-04-17 20:59:01 learn_logging.py[line:24] WARNING >>> warming
2020-04-17 20:59:01 learn_logging.py[line:25] ERROR >>> error
2020-04-17 20:59:01 learn_logging.py[line:26] CRITICAL >>> critical

上述代码只能做到将日志记录到一处(文件或控制台),需要同时保存到文件,且在控制台打印的方法如下:

import logging
# 取出logger对象
# 此函数也可进行设置记录人员信息,记录最低层级等 # logger = logging.getLogger('root',level=logging.INFO)
logger = logging.getLogger()

# 创建一个handler对象,用于写入日志文件
fh = logging.FileHandler('test1.log')

# 再创建一个handler,用于输出到控制台
ch = logging.StreamHandler()

# 标准输出格式对象
formatter = logging.Formatter('%(asctime)s - [%(filename)s:%(lineno)d - %(levelname)s - %(message)s')

# 文件输出调取日志标准输出格式
fh.setFormatter(formatter)
# 控制台输出调取日志标准输出格式
ch.setFormatter(formatter)

# logger 增加日志文件输出方式
logger.addHandler(fh)
# logger 增肌日志控制台输出方式
logger.addHandler(ch)

# 设置最低记录级别
logger.setLevel(logging.DEBUG)

# 此时打印,会同时输出到文件与控制台
logger.debug("debug") #2020-04-17 21:40:25,493 - [learn_logging.py:51 - DEBUG - debug
logger.info("info") #2020-04-17 21:40:25,493 - [learn_logging.py:52 - INFO - info
logger.warning('warming') #2020-04-17 21:40:25,493 - [learn_logging.py:53 - WARNING - warming
logger.error("error") #2020-04-17 21:40:25,493 - [learn_logging.py:54 - ERROR - error
logger.critical('critical') #2020-04-17 21:40:25,493 - [learn_logging.py:55 - CRITICAL - critical

SECS/GEM协议学习教程 摘要:SECS/GEM是半导体制造设备通信的国际标准,定义了主机系统与设备间的通信规范,包括设备控制、状态监控、数据采集等功能。协议采用分层架构(应用层、消息层、传输层、物理层),支持关键消息类型如S1F13(建立通信)、S2F13(数据采集)等。通信流程涵盖建立连接、数据交换和终止会话,并通过状态变量(SVID)、事件(CEID)等实现实时交互。典型应用包括设备初始化、报警处理及配方管理,需处理数据类型(如U2、A、L)和通信调试问题。 阅读详情

相关推荐

某10kV纺织厂供电系统设计【CAD图纸源码+Word文档】

本文详细介绍了设计变电所原始资料,负荷统计,基于负荷统计给出了变压器的选型,变电所主接线方式的设计、高低压母线、电缆的技术要求、短路电流的计算以及相关电气设备的保护参数及保护定值的计算、安全措施的规定。

weixin_761237174的博客 2744

Python笔记四

Python模块:模块就好比是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 1,init.py init.py控制着包的导入行为 可以在__init__内添加导入的功能 比如from ab import a 2,init.py为空 仅仅是把这个包导入,不会导入包中的模块 3,all 在__init__.py文件中,定义一个__all__变量,它控制着from包名import *时导入的模块。 4,使用模块import+模块名;再模块被调用后会自动被python解释器编译成二进制文件;

weixin_46412093的博客 283

CloudCompare如何进行二次开发?

CloudCompare源代码编译成功后,即可进行二次开发,可以通过修改源码或者制作插件实现二次开发。本文二次开发采用修改CloudCompare的源代码的方式,分别修改mainwindow.ui、mainwindow.h、mainwindow.cpp,实现扩展功能,克隆选中的点云。

【cacrle】的博客 5331

python中的时间模块time应用

1.时间模块应用 import os import time # os.path.getctime(file) #输出文件创建时间 time1 = os.path.getctime('/etc/shadow') print(time1) # 转化为元组时间 tuple_time = time.localtime((time1)) print(tuple_time) # 提取年...

qq_46089299的博客 457

Argoverse2数据集保姆级导入教程:从下载到预处理全流程解析

本文详细解析了Argoverse2数据集的完整导入流程,从环境配置、数据下载到预处理和高效加载策略。作为自动驾驶领域的标杆数据集,Argoverse2提供多模态传感器数据和高精地图信息,帮助研究者快速搭建数据处理流水线。文章包含实用代码示例和性能优化技巧,特别适合自动驾驶算法开发者参考。

weixin_29035405的博客 336

使用 Tesseract 在 C# 中进行光学字符识别(OCR)

你可以根据需要对 Tesseract 进行自定义配置,例如设置识别的分辨率、识别模式等。// 只识别数字// 设置自定义变量本文只讲述了简单的使用方法,未涉及字库训练,识别的准确率与训练的字库有关。

仰望星空的博客 4733

Python学习记录——14.os模块,sys模块,time模块,loging模块

文章目录1.os模块2.sys模块3.time模块4.logging模块 1.os模块 os 模块提供了非常丰富的方法用来处理文件和目录。常用的方法如下表所示: 序号 方法及描述 1 os.access(path, mode) 检验权限模式 2 os.chdir(path) 改变当前工作目录 3 os.chflags(path, flags) 设置路径的标记为数字标记。 ...

赈川 326

YOLOv11改进策略【小目标改进】| Shape-NWD:融合改进,结合Shape-IoU和NWD 更好地适应小目标特性

Bw−wgt2h−hgt2weight2Bweight2w−wgt​2h−hgt​2​其中weight2weight = 2weight2。

Limiiiing的博客 3052

BeautifulSoup,from bs4 import BeautifulSoup遇到python版本错误的解决办法

问题由来 换了台Windows环境,准备搭建Python学习环境。 OS:Windows 10 Python:3.7,从官网下载安装包,安装目录"C:\Users\Username\AppData\Local\Programs\Python\Python37" 安装Python3.7正常,下载安装BeautifulSoup正常(从官网下载压缩包,解压到D盘根目录(D:\beautifulsoup4...

steventian72的博客 2762

SPAD IMX479规格_分辨率

当然IMX479具备IMX459几乎全部的数字架构,但也有一个缺点就是贵,这个让头部的主机厂有些犹豫,毕竟大家都在集中火力想把车载LiDAR玩进千元机。如果用一片IMX479是不太可能实现千元内部的,当然国产也在奋起直追,特别在前面的几家SPAD厂商都具备开发IMX479的实力,但相对来说落地可能更是当下所考虑的,IMX479的迭代是基于IMX459,小编已经注意到国内有一两家已经在挑战479的规格了,如果国产SPAD没有大规模量产就直接流片IMX479的规格,可能就有点忽略市场的反馈闭环。

致力于lidar应用开发 2417

Spring-AI 第 17 章 - 飞书机器人接入详解

✅ Stream 长连接(官方 SDK)✅ AI 对话(支持工具调用)✅ 消息接收与回复✅ 天气查询✅ 数据库查询✅ 数学计算✅ 事件去重Stream 长连接模式:使用官方 SDK 建立 WebSocket 长连接,服务器主动连接飞书,无需公网 IP消息处理流程:接收消息 → 解析内容 → AI 处理 → 回复用户AI 工具调用:接入 FunctionTools,支持天气、计算、日期、数据库查询等多种工具。

AppBlog.CN全栈架构 211

Python中模块的使用(os模块、time模块、第三方模块)

1、os模块 (1)和操作系统相关 返回操作系统类型 返回posix表示Linux操作系统 返回nt表示Windows操作系统 import os ##导入操作系统模块 print(os.name) ##打印当前操作系统的名称 操作系统详细信息采集 import os info = os.uname() print(info) ##操作系统的基本信息 print(info.sysnam...

weixin_45792518的博客 676

手把手教你ensp仿真搭建校园网(含防火墙及无线网络)系列(三)校园无线网络AC+AP配置

本系列博客将带你从零开始,使用 华为 eNSP(Enterprise Network Simulation Platform) 仿真搭建一个完整的校园网络,涵盖 核心层、汇聚层、接入层、防火墙安全策略、无线AC+AP组网 等实战场景。无论你是网络初学者还是希望深化实战经验的工程师,都能通过本教程掌握企业级网络的规划、配置与排错技巧。

echo的博客 1359

python常用模块:time,random,os,sys,hashlib,logging,序列化

常用模块 1. 时间模块 2. random模块 3. os模块 4. sys模块 5. 序列化模块 6. hashlib模块 7. configparse模块 8. logging模块 时间模块: #导入及常用方法 import time 1.time.sleep(secs) (线程)推迟指定的时间运行。单位为秒 2、time.time() 获取当前时间戳 时间分为三种: 时间戳时...

weixin_44730235的博客 409

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

python如何修改内置模块_Python-内置模块

内置模块一、os用于提供系统级别的操作os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cdos.curdir 返回当前目录: ('.')os.pardir 获取当前目录的父目录字符串名:('..')os.makedirs('dirname1/dirname2') 可生成多层递归...

weixin_39570777的博客 317

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

python常用模块

模块:本质上就是一个.py文件 模块分为三部分:内置模块、第三方模块、自定义模块 一、time模块   1.时间表示形式   在python中,通常有三种方式来表示时间:   (1)时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的,是folat类型。   (2)格式化的时间字符串(Format String): ‘2017-06-...

achen1112的博客 588

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

3、Python编程之常用模块

Pickle序列化和所有其他编程语言特有的序列化问题 样,它只能用于Python,并且可能不同版本的Python彼此都不兼容,因此,只能用Pickle保存那些不重要的数据,即不能成功地反序列化也没关系。但是pickle的好处是可以存储Python中的所有的数据类型,包括对象,而json不可以。pickle模块序列化和反序列化的过程如下图所示。

2503_92914039的博客 1303

python之路(8)常用模块

  目录 os模块 sys模块 json模块 pickle模块 xml模块 re模块 logging模块 configparser模块 hashlib模块 time模块 random模块 subprocess模块 os模块 import os print(os.getcwd()) #获取当前文件的工作路径 os.chd...

dfy36508的博客 181

day06.2-Python中常用的内置模块

一. time模块:import time 1 import time 2 3 "1. 查看系统的时间戳信息" 4 t=time.time() 5 print(t) #1559136108.672717 6 7 "2. 显示系统的结构化当地时间(年 月 日 时 分 秒 一周中第几天 一年中第几天)" 8 t=time.localtime() 9...

weixin_30897233的博客 278

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess log...

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则 转自老男孩老师Yuan:http://www.cnblogs.com/yuanchenqi/articles/5732581.html 模块&包(* ...

weixin_30607659的博客 303

python 常用模块的使用

Python自动化开发 - 常用模块(一)本节内容1、模块介绍2、time&datetime模块3、random模块4、os模块5、sys模块6、json&pickle模块7、logging模块一、模块介绍模块,是一堆代码实现了某个功能的代码集合。类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合而对于一个复杂的功能来,可能需要多个函数才

Demo_3的博客 557

python常用内置模块(库)(持续更新)

python常用简单模块time与datetime模块random模块 time与datetime模块 在Python中,通常有这几种方式来表示时间: 一、时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。 用于时间间隔的计算 二、格式化的时间字符串(Format String)(按照某种格式显示的) 用于显示格式 三、结构化的时间(struct_time):struct_t

Tangent的博客 3694

python中常用的内置模块

1. time模块(1)功能汇总(2)程序解释2. datetime模(1)功能汇总(2)程序解释3. calendar模块(1)功能汇总(2)程序解释4. sys模块(1)功能汇总(2)程序解释5. os模块(1)功能汇总(2)程序解释6. pathlib模块(1)功能汇总(2)程序解释7. shutile模块(1)功能汇总(2)程序解释 8. random模块(1)功能汇总(2)程序解释9. json模块(1)功能汇总(2)程序解释10. pickle模块(1)功能汇总(2)程序解释7. shutile

非晚非晚的博客 6126

python日常应用实例_python模块常用用法实例详解

1、time模块(※※※※)import time #导入时间模块print(time.time()) #返回当前时间的时间戳,可用于计算程序运行时间print(time.localtime()) #返回当地时间的结构化时间格式,参数默认为时间戳print(time.gmtime) #返回UTC时间的结构化时间格式print(time.mktime(time.localtime())) #将结构化...

weixin_39629679的博客 212

python 常用模块

常用模块一 collections模块 时间模块 random模块 os模块 sys模块 序列化模块 re模块 常用模块二 hashlib模块 configparse模块 logging模块   collections模块   collections模块提供了几个额外的数据类型:Counter、deque、defaultdict、na...

weixin_30950887的博客 175

python模块用法_python模块常用用法

1、time模块(※※※※)import time #导入时间模块print(time.time()) #返回当前时间的时间戳,可用于计算程序运行时间print(time.localtime()) #返回当地时间的结构化时间格式,参数默认为时间戳print(time.gmtime) #返回UTC时间的结构化时间格式print(time.mktime(time.localtime())) #将结构化...

weixin_39814482的博客 94
上一篇: python生成器与迭代器
下一篇: python中正则表达式的应用
gqf960708
博客等级 码龄9年 5粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值