【Python笔记(三)——时间模块 函数 模块与包 面向对象 文件基本操作】

Python 基础:与时间相关的模块

Python 中处理时间和日期的标准库是 datetime,而与时间相关的其他常用模块包括 timecalendardateutil 等。

以下是一些常见的操作方法:

获取当前时间

import datetime

# 获取当前日期和时间
now = datetime.datetime.now()
print(now)  # 2022-10-25 14:51:12.123456

# 获取当前日期
today = datetime.date.today()
print(today) # 2022-10-25

# 获取当前时间
current_time = datetime.datetime.now().time()
print(current_time) # 14:51:12.123456

格式化时间

import datetime

now = datetime.datetime.now()

# 将日期时间格式化为字符串
formatted_time = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_time) # 2022-10-25 14:51:12

# 将时间格式化为字符串
formatted_date = datetime.date.today().strftime("%Y年%m月%d日")
print(formatted_date) # 2022年10月25日

获取时间差

import datetime
from dateutil.relativedelta import relativedelta

# 计算两个日期之间的时间差
d1 = datetime.date(2022, 10, 20)
d2 = datetime.date(2022, 10, 25)
delta = d2 - d1
print(delta.days) # 5

# 计算两个时间之间的时间差
t1 = datetime.datetime(2022, 10, 25, 9, 0, 0)
t2 = datetime.datetime(2022, 10, 25, 14, 30, 0)
delta = t2 - t1
print(delta) # 5:30:00

Python 基础:函数

函数是一段可重用的代码组合,可以代表 Python 程序中的一个操作。

在 Python 中,定义一个函数需要遵循以下语法:

def function_name(parameters):
    """docstring"""
    # code block
    return value

其中:

  • def 是 Python 中定义函数的关键字;
  • function_name 是你所定义的函数名称;
  • parameters 是函数的参数列表,可以为空;
  • docstring 是可选的文档字符串,用于描述函数的功能;
  • code block 是函数体,是对函数功能的具体实现;
  • return 语句是可选的,用于返回函数的值,可以为空。

以下是一个简单的函数示例:

def add(a, b):
    """This function adds two numbers."""
    c = a + b
    return c

在函数定义后,可以通过调用函数并传入参数来调用该函数:

result = add(1, 2)
print(result)  # 3

Python 基础:模块与包

Python 模块是一个以 .py 文件为扩展名的文件,其中包含了一些 Python 代码。在 Python 中,模块是一种封装方式,可以将相关的代码组织在一个文件中,方便管理和使用。

Python 中导入模块可以使用 import 语句,语法如下:

import module_name

例如,加载 Python 自带的 math 模块:

import math

sqrt_2 = math.sqrt(2)
print(sqrt_2) # 1.4142135623730951

除了 import 语句之外,Python 还提供了其他两种导入模块的方式:

  • from module_name import *:导入指定模块的所有变量和函数;
  • from module_name import variable_name / function_name:只导入指定变量或函数。

在实际开发中,经常需要将相关的模块组织成一个包。包是一种包含模块和子包的一种封装方式,可以将多个模块组织在一起,方便管理和使用。

Python 中默认会在 sys.path 路径下搜索模块和包,可以通过以下方法添加自定义的模块搜索路径:

import sys 
sys.path.append('/path/to/module')

Python 基础:面向对象

在 Python 中,一切都是对象,因此 Python 是一门面向对象的编程语言。

在 Python 中,通过定义类来创建对象。类是一个抽象的概念,它描述了一组属性和方法。而具体的对象则是根据类创建的实例,它拥有了类所描述的属性和方法。

以下是一个简单的 Python 类及其实例的示例:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_hello(self):
        print(f"Hello, my name is {
      
      self.name}, and I am {
      
      self.age} years old.")

person1 = Person("Tom", 20)
person2 = Person("Jerry", 18)

person1.say_hello() # Hello, my name is Tom, and I am 20 years old.
person2.say_hello() # Hello, my name is Jerry, and I am 18 years old.

在上述示例中,类 Person 描述了人的属性和方法,包括姓名和年龄两个属性,以及一个打招呼的方法 say_hello。通过 __init__ 方法进行初始化,然后用 person1person2 分别创建了两个实例,并调用 say_hello 方法输出问候语。

Python 基础:文件基本操作

Python 中使用 open() 函数打开文件,该函数返回一个文件对象,可以通过该对象进行文件读写操作。

以下是一些常见的文件操作方法:

打开文件

# 打开文件,返回文件对象
file = open('file.txt', 'r')

在上述代码中,'file.txt' 是要打开的文件名(需要在当前目录下有相应的文件),'r' 表示以只读方式打开文件。其他常用的文件打开模式包括 'w'(写入模式)、'a'(追加模式)和 'x'(创建模式)等。

读取文件内容

# 一次性读取整个文件内容
file_content = file.read()
print(file_content)

# 每次读取一行内容
for line in file:
    print(line)

在上述代码中,read() 方法会将整个文件一次性读取到内存中,并返回文件内容的字符串。而使用 for 循环则可以逐行读取文件内容。

写入文件内容

# 打开文件,以写入模式写入文本
file = open('new_file.txt', 'w')

# 向文件中写入内容
file.write("Hello, world!")

# 关闭文件
file.close()

在上述代码中,使用 'w' 打开文件时,如果文件已经存在,则会覆盖文件原有的内容。如果需要追加内容,则可使用 'a' 打开文件。

关闭文件

# 在处理完文件后,关闭文件
file.close()

在文件操作完成后,为了释放文件句柄和文件系统资源,应该使用 close() 方法关闭文件。或者,也可以使用 with 语句来自动关闭文件:

with open('file.txt', 'r') as f:
    file_content = f.read()

猜你喜欢

转载自blog.csdn.net/muzillll/article/details/130968301
今日推荐