python sys time datetime openpyxl json 模块

sys模块

sys 模块,主要提供了系统相关的配置和操作,封装了探测、改变解释器
runtime 以及资源的交互。

import sys
#得到解释器的版本信息
print(sys.version)
#得到当前运行平台
print(sys.platform)

sys.argv 获取传递给脚本的参数,参数解析类似于 bash 的方式,第
一个参数代表脚本本身;
sys.stderr , sys.stdin , sys.stdout 这些都分别代表一个文件对象;

import sys
#以列表方式返回传递给脚本的参数
print(sys.argv)
#sys.stderr , sys.stdin , sys.stdout 这些都分别代表一个文件对象;
print(sys.stderr)
print(sys.stdin)
print(sys.stdout)

time及datetime模块

time模块

简介:time模块--时间获取和转换
time模块提供各种时间相关的功能
与时间相关的模块有:time,datetime,calendar
这个模块中定义的大部分函数是调用C平台上的同名函数实现
术语和约定的解释: 1.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日开始按秒计算的偏移量(time.gmtime(0))此模块中的函数无法处理1970纪元年以前的时间或太遥远的未来(处理极限取决于C函数库,对于32位系统而言,是2038年)
2.UTC(Coordinated Universal Time,世界协调时)也叫格林威治天文时间,是世界标准时间.在我国为UTC+8
3.DST(Daylight Saving Time)即夏令时
4.时间元组(time.struct_time对象, time.localtime方法)
5.字符串时间(time.ctime)

常用的时间转换

  import time
     # 把看不懂的时间戳转换为字符串格式
    a=time.time()
    print(a)
    print(time.ctime(a))
    # 把看不懂的时间戳转换为元组格式   
    print(time.localtime(a))

在这里插入图片描述

import time
# 把元组的时间转换为时间戳
tuple_time = time.localtime()
print(time.mktime(tuple_time))
# 把元组的时间转换字符串格式
print(time.strftime('%m-%d',tuple_time))
print(time.strftime('%Y-%m-%d',tuple_time))
print(time.strftime('%T',tuple_time))
print(time.strftime('%F',tuple_time))
# 字符串格式转换为元组
s='2018-10-10'
print(time.strptime(s,'%Y-%m-%d'))
s_time='12:12:30'
print(time.strptime(s_time,'%H:%M:%S'))

在这里插入图片描述
eg:想要得到/etc/group文件的最后一次修改时间,
对应的年月日这些信息,并保存在文件date.txt文件中。

import os
import time
time1 = os.path.getctime('/etc/group')
tuple_time = time.localtime(time1)
year = tuple_time.tm_year
month = tuple_time.tm_mon
day = tuple_time.tm_mday
with open('date.txt', 'w') as f:
    f.write("%d %d %d" %(year, month, day))

datetime模块

from datetime import date
from datetime import  datetime
from  datetime import  timedelta
# 获取当前的日期并且以字符串方式返回
print(date.today())
d=date.today()
print(d)
# 对象加或者减一个时间间隔, 返回一个新的日期对象;
delta = timedelta(days=3)
print(d-delta)
#获取当前时间
d=datetime.now()
print(d)

在这里插入图片描述

namedtupled新型数据类型

因为元组的局限性:不能为元组内部的数据进行命名,所以往往我们并不知道一个元组所要表达的意义,
所以在这里引入了 collections.namedtuple 这个工厂函数,来构造一个带字段名的元组。
具名元组的实例和普通元组消耗的内存一样多,因为字段名都被存在对应的类里面。这个类跟普通的对象
实例比起来也要小一些,因为 Python 不会用 _ dict _ 来存放这些实例的属性。
def namedtuple(typename, field_names, *, verbose=False, rename=False, module=None):

  • typename: 元组名称

  • field_names : 元组中元素的名称

  • rename: 如果元素名称中包含python关键字,必须设置rename=True

    from collections import namedtuple
    user = namedtuple(‘User’,[‘name’,‘age’,‘gender’])
    u = user(‘cooffee’,13,‘male’)
    print(u.name)
    print(u.age)
    print(u.gender)
    print(u)

openpyxl模块

excel文档的基本定义

  • 工作薄(workbook)
  • 工作表(sheet)
  • 活动表(active sheet)
  • 行(row): 1,2,3,4,5,6………
  • 列(column): A,B,C,D………
  • 单元格(cell): B1, C1
import openpyxl
# 打开一个excel文档, class 'openpyxl.workbook.workbook.Workbook'实例化出来的对象
wb = openpyxl.load_workbook('classbox.xlsx')
print(wb,type(wb))
# 获取当前工作薄里所有的工作表, 和正在使用的表;
print(wb.sheetnames)
print(wb.active)
# 选择要操作的工作表, 返回工作表对象
sheet = wb['Sheet1']
# 获取工作表的名称
print(sheet.title)
#返回指定行指定列的单元格信息
print(sheet.cell(row=1,column=2).value)
cell =sheet['B1']
print(cell)
print(cell.row,cell.column,cell.value)
# 获取工作表中行和列的最大值
print(sheet.max_column)
print(sheet.max_row)
sheet.title = "学生信息"
print(sheet.title)
#  访问单元格的所有信息
print(sheet.rows)   # 返回一个生成器, 包含文件的每一行内容, 可以通过便利访问.
# 循环遍历每一行
for row in sheet.rows:
 # 循环遍历每一个单元格
    for cell in row:
    # 获取单元格的内容
        print(cell.value,end=',')
# 保存修改信息
wb.save(filename='classbox1.xlsx')

在这里插入图片描述

json模块

import json
# 将python对象编码成为json的字符串格式;
d={'name':'fentiao'}
jsonstr = json.dumps(d)
print(jsonstr,type(jsonstr))
l = [1,2,3,4]
jsonli=json.dumps(l)
print(jsonli,type(jsonli))
# 将获取的json字符串解码为python的对象
pythonDict = json.loads(jsonstr)
print(pythonDict,type(pythonDict))
# 将将python对象编码成为json的字符串格式并写入文件中;
with open('json.txt', 'w') as f:
    json.dump(d, f)
# 将文件中的json字符串解码为python的对象
with open('json.txt') as f:
    json_Dict = json.load(f)
    print(json_Dict, type(json_Dict))

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您提供一些使用常用标准库的 Python 示例代码。以下是一个简单的例子: ```python import sys import os import math import random import pickle import subprocess import queue from io import StringIO import logging import json import time import datetime import re import csv import threading import asyncio # 示例:使用random库生成一个随机数 random_number = random.randint(1, 100) print("随机数:", random_number) # 示例:使用os库获取当前工作目录 current_dir = os.getcwd() print("当前工作目录:", current_dir) # 示例:使用datetime库获取当前时间 current_time = datetime.datetime.now() print("当前时间:", current_time) # 示例:使用re库进行正则表达式匹配 pattern = r'\d+' text = 'Hello 123 World' matches = re.findall(pattern, text) print("匹配结果:", matches) # 示例:使用json库将字典对象转换为JSON字符串 data = {'name': 'John', 'age': 30, 'city': 'New York'} json_str = json.dumps(data) print("JSON字符串:", json_str) # 示例:使用threading库创建并启动一个线程 def print_message(message): print("线程消息:", message) thread = threading.Thread(target=print_message, args=("Hello from thread",)) thread.start() thread.join() # 示例:使用asyncio库创建一个协程并运行 async def print_message_async(message): print("异步消息:", message) loop = asyncio.get_event_loop() loop.run_until_complete(print_message_async("Hello from async")) loop.close() ``` 这些示例展示了如何使用常用的 Python 标准库进行不同的操作,包括生成随机数、获取当前工作目录、处理时间和日期、正则表达式匹配、JSON序列化等。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值