Python--类

ops/2024/11/25 6:45:18/

Python 类练习

最近由于工作需要用到Python写脚本,因此,因此,快速学习一下Python.
如果你学过多种语言, 学习Python就很快了。
推荐菜鸟教程Python 3的教程。Link: https://www.runoob.com/python3/python3-tutorial.html

作为学习,用了1天的时间学习一个基本语法, 以下是有关Python中类的使用方式。

这里模拟了一个文件的信息写法。

python">
import os
import datetime# 定义 Access 和 Time 类
class Access:def __init__(self, can_read, can_write):self.can_read = can_readself.can_write = can_writeclass Time:def __init__(self, access_time, change_time, modify_time):self.access_time = access_timeself.change_time = change_timeself.modify_time = modify_time# 转换为年月日时间def normalTime(self):time = []access_datetime = datetime.datetime.fromtimestamp(self.access_time)self.access_date = access_datetime.strftime("%Y-%m-%d")change_datetime = datetime.datetime.fromtimestamp(self.change_time)self.change_date = change_datetime.strftime("%Y-%m-%d")modify_datetime = datetime.datetime.fromtimestamp(self.modify_time)self.modify_date = modify_datetime.strftime("%Y-%m-%d")print("atime:" + self.modify_date + " ctime:" + self.change_date + " mtime:" + self.modify_date)time.append(self.access_date)time.append(self.change_date)time.append(self.modify_date)return time# 定义 FileClass 类
class FileClass:def __init__(self, path, file_name, extension, size, access, time):self.path = pathself.file_name = file_nameself.extension = extensionself.size = sizeself.access = accessself.time = time# 实例化 Access 和 Time 类
access_obj = Access(can_read=True, can_write=False)time_obj = Time(access_time=os.path.getatime('/'),change_time=os.path.getctime('/'),modify_time=os.path.getmtime('/')
)# 实例化 FileClass
file_obj = FileClass(path="/home/user/documents",file_name="example",extension="txt",size=1024,access=access_obj,time=time_obj
)# 打印文件对象的属性以验证
print(f"文件路径: {file_obj.path}")
print(f"文件名: {file_obj.file_name}")
print(f"文件后缀名: {file_obj.extension}")
print(f"文件大小: {file_obj.size} bytes")
print(f"文件访问权限: Read: {file_obj.access.can_read}, Write: {file_obj.access.can_write}")
print(f"文件访问时间: {file_obj.time.access_time}")
print(f"文件更改时间: {file_obj.time.change_time}")
print(f"文件修改时间: {file_obj.time.modify_time}")print(file_obj.time.normalTime())

输出结果

文件路径: /home/user/documents
文件名: example
文件后缀名: txt
文件大小: 1024 bytes
文件访问权限: Read: True, Write: False
文件访问时间: 1732197543.3288176
文件更改时间: 1731068972.3327565
文件修改时间: 1732185471.0151415
atime:2024-11-21 ctime:2024-11-08 mtime:2024-11-21
[‘2024-11-21’, ‘2024-11-08’, ‘2024-11-21’]
PS D:\OtherProjects\Python>


http://www.ppmy.cn/ops/136502.html

相关文章

周末总结(2024/11/24)

工作 人际关系核心实践: 要学会随时回应别人的善意,执行时间控制在5分钟以内 坚持每天早会打招呼 遇到接不住的话题时拉低自己,抬高别人(无阴阳气息) 朋友圈点赞控制在5min以内,职场社交不要放在5min以外 职场的人际关系在面对利…

前端HTML

声明:以下内容来自泷羽sec的学习笔记,仅作学习,如有按照知识进行破环网络安全,后果自负!! 泷羽sec:https://space.bilibili.com/350329294/channel/collectiondetail?sid4031268&spm_id_f…

Android \android-sdk\platform-tools\adb.exe start-server‘ failed

发现通知栏里不停发出报错\android-sdk\platform-tools\adb.exe start-server failed -- run manually if necessary 也无法找到链接上的实体设备 最后是端口号被占用。 5037为adb.exe的默认端口号, 查看该宽口号的使用情况,如下操作: 打开命…

038_High_Level_Skip_in_Matlab中的高端跳过循环

循环控制 Matlab的循环控制语句有两个,分别是for和while。for循环是一种计数循环,while循环是一种条件循环。在循环中,有时候我们需要跳过一些循环,这时候就需要用到continue语句;当我们需要提前结束循环,…

【Unity How】Unity中如何实现物体的匀速往返移动

直接上代码 using UnityEngine;public class CubeBouncePingPong : MonoBehaviour {[Header("移动参数")][Tooltip("移动速度")]public float moveSpeed 2f; // 控制移动的速度[Tooltip("最大移动距离")]public float maxDistance 5f; // 最大…

DataGrip 连接 Redis、TongRDS

连接 Redis 或 TongRDS 有些旧版本 没有 redis 驱动用不了 1)选择驱动 2)添加连接信息 3)测试连接 4)保存连接 5)使用案例

【阵列信号处理】相干信号和非相干信号生成

文章目录 一、总结二、知识点相干(coherent)和非相干(incoherent)信号相干信号生成代码 相关信号(correlated signal)相关信号生成代码 正交信号定义 本文记录博主的科研日记。如果对博主的其他文章感兴趣&…

uni-app 玩转条件编译:自定义平台的条件编译实战详解

一. 条件编译支持的场景 uni-app 的条件编译能支持以下几种场景,具体如图所示: 1. API 的条件编译 简言之,同一功能实现,可能有不同的逻辑处理,比如:在 js 文件中,或者在 Vue 文件中的 scrip…