python模块(二)

time模块

时间戳格式

import time
data_time=time.time()
print(data_time)        #1702546257.544845
print(type(data_time))      #<class 'float'>
#打印自1970年到现在的时间 1702546257.544845
#打印123,每一次停4s
while True:print(123)time.sleep(4)

datetime格式(时间加减)

from datetime import datetime
v1=datetime.now()
print(v1)		#2023-12-14 22:10:29.771616
print(type(v1))		#<class 'datetime.datetime'>

字符串格式(存入到文件)

from datetime import datetime
v1=datetime.now()
v1=v1.strftime("%Y-%m-%d %H:%M:%S")
print(v1)
print(type(v1))

练习(字符串格式)

#每注册一个用户,创建一个文件
from datetime import datetime
while True:name=input("请输入用户名")passwd=input("请输入密码")#把字符戳事件变成字符串格式path_file=datetime.now().strftime("%Y-%m-%d-%H-%M-%S")path_file1="{}.txt".format(path_file)
​with open(path_file1,mode='a',encoding="utf-8") as f:f.write("{}|{}\n".format(name,passwd))

练习(datamate格式)

from datetime import datetime
from datetime import timedelta
v1=datetime.now()
v2=v1+timedelta(days=199,hours=1,seconds=1,minutes=12)
print(v1)       #2023-12-14 22:28:49.666447
print(v2)       #2024-06-30 22:40:50.666447

时间格式的相互转换

字符串--->datetime

text="2001-09-19"
from datetime import datetime
res=datetime.strptime(text,"%Y-%m-%d")
print(res)
print(type(res))
#2001-09-19 00:00:00
#<class 'datetime.datetime'>

datetime-->字符串

from datetime import datetime
res=datetime.now().strftime("%Y-%m-%d")
print(res)
print(type(res))
#2023-12-15
#<class 'str'>
​

datetime-->时间戳

from datetime import datetime
v1=datetime.now()
#timestamp将指定时间转换为 Unix 时间戳
v2=v1.timestamp()
print(v2)
print(type(v2))
#1702609788.319188
#<class 'float'>

时间戳-->datetime

from datetime import datetime
import time
v1=time.time()
res=datetime.fromtimestamp(v1)
print(res)
print(type(res))
#2023-12-15 11:13:18.866071
#<class 'datetime.datetime'>

考勤时间计算是否大于8小时

from datetime import datetime
import time
time1="2022-02-01 9:23"
time2="2022-02-01 19:23"
time3=datetime.strptime(time1,"%Y-%m-%d %H:%M")
time4=datetime.strptime(time2,"%Y-%m-%d %H:%M")
work_time=time4-time3
print(work_time)        #10:00:00   时间戳格式
print(type(work_time))  #<class 'datetime.timedelta'>
print(work_time.seconds/3600)   #10小时
print(type(work_time.seconds/3600)) #<class 'float'>

os模块

#拼接目录
import os
path=os.path.join("root","opt","aaa")
print(path)     #root\opt\aaa
folder_path=os.path.dirname(path)   #读取上一级目录
print(folder_path)      #root\opt
​
#涉及文件操作时,最好使用绝对路径
#首先使用__file__和abspath找到文件的上级目录,再通过join拼接得到完整目录,可以在任意电脑运行
import os
base_dir=os.path.dirname(os.path.abspath(__file__))
file_path=os.path.join(base_dir,"mikuai")
print(file_path)    #D:\pycharm\pythonProject3\全栈开发\mikuai
​
#判断文件是否存在
v1=os.path.exists("aaa.txt")
print(v1)
​
#创建文件夹
os.makedirs("xx/xx")    #如果文件已经存在,会报错
#如果文件不存在,则创建文件
file_path="xx/xx"
if not os.path.exists(file_path):os.makedirs("xx/xx")

判断是否为文件夹

v1=os.path.isdir(file_path)
print(v1)   #时文件夹返回True,否则返回Faulse

删除文件及文件夹

import os
os.remove(folder_path) #删除文件
#导入shutil模块
import shutil
base_dir=os.path.dirname(os.path.abspath(__file__))     #获取当前脚本文件所在的目录路径
db_path=os.path.join(base_dir,"xx")     #生成完整的文件夹路径。
shutil.rmtree(db_path)      #删除该文件夹及其内容,包括所有子目录和文件。
​

景区门票预订

#新用户和老用户都可以预定和查看历史订单
import os
from datetime import datetime
​
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
DB_PATH = os.path.join(BASE_DIR, 'db')
​
def booking(name, user_file_path):park_name = input("景区名字:")ticket_num = input("门票数量:")current_date = datetime.now().strftime("%Y-%m-%d")with open(user_file_path, mode='a',encoding="utf-8") as f:f.write(f"姓名:{name} 景区名字:{park_name} 门票数量:{ticket_num} 预定日期:{current_date}\n")print("预定成功")
​
def history(name, user_file_path):print(f"{name}的历史订单:")if not os.path.exists(user_file_path) or os.path.getsize(user_file_path) == 0:print("暂无历史订单")else:with open(user_file_path, 'r') as f:for line in f:line = line.strip()print(line)
​
def run():if not os.path.exists(DB_PATH):os.makedirs(DB_PATH)while True:name = input("姓名:")user_file_path = os.path.join(DB_PATH, f"{name}.txt")#老用户显示欢迎回来,新用户显示欢迎因用户if os.path.exists(user_file_path):print("欢迎回来")else:print("欢迎您,新用户")#将函数写入字典中choice = {"1": booking, "2": history}print("1,预定2 查看历史订单")
​choice1 = input("序号")func=choice.get(choice1)if choice1 == "1":func(name,user_file_path)continueelif choice1 == "2":func(name,user_file_path)continueelse:print("选择无效")continue
if __name__ == '__main__':run()

image-20231224160944564

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

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

相关文章

小程序分账方案:实现商户分账的简便与灵活

随着移动支付的普及和小程序的快速发展&#xff0c;越来越多的商家选择在微信小程序上开展业务。然而&#xff0c;对于一些有多个分账方的商户而言&#xff0c;如何实现快速、准确和灵活的资金分账成为了一个挑战。本文将介绍一种高效的小程序分账方案&#xff0c;帮助商户轻松…

python基础及网络爬虫

网络爬虫(Web crawler)&#xff0c;有时候也叫网络蜘蛛(Web spider)&#xff0c;是指这样一类程序——它们可以自动连接到互联网站点&#xff0c;并读取网页中的内容或者存放在网络上的各种信息&#xff0c;并按照某种策略对目标信息进行采集&#xff08;如对某个网站的全部页面…

「CISP题库精讲」CISP题库习题解析精讲20道

前言 本篇主要对CISP教材第九章《计算环境安全》的一些习题进行讲解&#xff0c;包括20道题&#xff0c;这里只是部分习题&#xff0c;针对第九章可能会多写几章的内容&#xff0c;如果我发布的这些习题里面没有你想找的那道题&#xff0c;你也可以直接私信我&#xff0c;我加…

【读书笔记】针对ICS的ATTCK矩阵详解(一)

Techniques - ICS | MITRE ATT&CKhttps://attack.mitre.org/techniques/ics/ 一、初始访问&#xff08;Initial Access&#xff09; 该阶段&#xff1a;攻击者正在尝试进入ICS环境。 初始访问包括攻击者可能用作入口向量&#xff0c;从而可以在 ICS 环境中获得初始立足点的…

heStudio Authenticator验证器

在整整一年前&#xff0c;我设想了一个完全由我们开发的MFA令牌软件。由于时间的原因&#xff0c;该计划被一次次的搁置。终于&#xff0c;在2024年&#xff0c;本计划被再次重启&#xff0c;历经三个月&#xff08;的夜晚&#xff09;打造的媲美于Google Authenticator的完全由…

VR全景在智慧园区中的应用

VR全景如今以及广泛的应用于生产制造业、零售、展厅、房产等领域&#xff0c;如今720云VR全景更是在智慧园区的建设中&#xff0c;以其独特的优势&#xff0c;发挥着越来越重要的作用。VR全景作为打造智慧园区的重要角色和呈现方式已经受到了越来越多智慧园区企业的选择和应用。…

K8s-MySQL主从集群

K8s-MySQL主从集群 引言 该案例代码均可从https://github.com/WeiXiao-Hyy/k8s_example 获取&#xff0c;欢迎Star&#xff01; 需求 一个“主从复制”的MySQL集群有一个主节点Master有多个从节点Slave从节点需要能水平扩展所以写操作只能在主节点上执行读操作可以在所有节点…

C++程序设计-第四/五章 函数和类和对象【期末复习|考研复习】

前言 总结整理不易&#xff0c;希望大家点赞收藏。 给大家整理了一下C程序设计中的重点概念&#xff0c;以供大家期末复习和考研复习的时候使用。 C程序设计系列文章传送门&#xff1a; 第一章 面向对象基础 第四/五章 函数和类和对象 第六/七/八章 运算符重载/包含与继承/虚函…

CUDA入门之统一内存

原文来自CUDA 编程入门之统一内存 &#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;高性能&#xff08;HPC&#xff09;开发基础教程 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质…

Python元组(Tuple)深度解析!

目录 1. 什么是元组&#xff1f; 2. 创建元组 3.访问元组 4.元组的运算 5.修改元组不可行 6.元组的应用场景 前面的博客里&#xff0c;我们详细介绍了列表&#xff08;List&#xff09;这一种数据类型&#xff0c;现在我们来讲讲与列表相似的一种数据类型&#xff0c;元组…

使用Docker安装运行RabbitMQ---阿里云服务器

目录 0、阿里云没开端口的得要去安全组规则去添加&#xff1a; 1、下载RabbitMQ镜像&#xff1a; 2、查看镜像是否下载成功&#xff0c;得到docker镜像id&#xff1a; 3、运行RabbitMQ: 4、查看RabbbitMQ容器是否启动成功&#xff1a; 5、启动RabbitMQ中的插件管理 6、访…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的人群密度检测系统(Python+PySide6界面+训练代码)

摘要&#xff1a;开发人群密度检测系统对于公共安全等领域具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个人群密度检测系统&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并对比了YOLOv7、YOLOv6、YOLOv5&#xff0c;展示了不同模型…

Python 读取写入excel文件

使用Python读取和写入excel的xlsx、xls文件 目录 读取xlsx文件 安装三方库 引入三方库 读取数据 打开文件 表名 最大行数 最大列数 读取一张表 读取整个文件 返回xls整体内容 安装三方包 读取内容 写入xls文件 引入三方库 创建文件并写入数据 报错及解决 报错…

KBL610-ASEMI开关电源专用KBL610

编辑&#xff1a;ll KBL610-ASEMI开关电源专用KBL610 型号&#xff1a;KBL610 品牌&#xff1a;ASEMI 封装&#xff1a;KBL-4 最大重复峰值反向电压&#xff1a;1000V 最大正向平均整流电流(Vdss)&#xff1a;6A 功率(Pd)&#xff1a;中小功率 芯片个数&#xff1a;4 …

项目解决方案:视频监控接入和录像系统设计方案(下)

目 录 1.概述 2. 建设目标及需求 2.1建设总目标 2.2 需求描述 ​2.3 需求分析 3.设计依据与设计原则 3.1设计依据 3.2 设计原则 4.建设方案设计 4.1系统方案设计 4.2组网说明 5.产品介绍 5.1视频监控综合资源管理平台介绍 5.2视频录像服务器和存储 5.2.…

MySQL--优化(索引--聚簇和非聚簇索引)

MySQL–优化&#xff08;索引–聚簇和非聚簇索引&#xff09; 定位慢查询SQL执行计划索引 存储引擎索引底层数据结构聚簇和非聚簇索引索引创建原则索引失效场景 SQL优化经验 一、聚簇索引 聚簇索引&#xff1a;将数据存储与索引放到了一块&#xff0c;索引结构的叶子节点保存…

ChatGPT无法登录,提示我们检测到可疑的登录行为,将阻止进一步的尝试。请与管理员联系

1. 问题描述 之前本来已经连续稳定使用ChatGPT好几个月了&#xff0c;但是今天尝试登录ChatGPT的时候&#xff0c;却提示&#xff1a;我们检测到可疑的登录行为&#xff0c;将阻止进一步的尝试。请与管理员联系。 此外&#xff0c;我还在网上看到了一些相关的消息&#xff0c;…

3D资产管理

3D 资产管理是指组织、跟踪、优化和分发 3D 模型和资产以用于游戏、电影、AR/VR 体验等各种应用的过程。 3D资产管理也称为3D内容管理。 随着游戏、电影、建筑、工程等行业中 3D 内容的增长&#xff0c;实施有效的资产管理工作流程对于提高生产力、减少错误、简化工作流程以及使…

【Android 内存优化】KOOM 快手开源框架线上内存监控方案-源码剖析

文章目录 前言OOMMonitorInitTask.INSTANCE.initOOMMonitor.INSTANCE.startLoopsuper.startLoopcall() LoopState.Terminate dumpAndAnalysisdumpstartAnalysisService回到startLoop方法总结 前言 这篇文章主要剖析KOOM的Java层源码设计逻辑。 使用篇请看上一篇: 【Android …

基于el-tree实现懒加载穿梭条

一、关键代码 <template><div><!-- 左侧待选列表 --><div class"left-box"><p>待选列表</p><el-input placeholder"输入关键词过滤" v-model"leftFilterText" clearable/><el-treeref"tree…