文章目录
- Python 基础:与时间相关的模块
- 获取当前时间
- 格式化时间
- 获取时间差
- Python 基础:函数
- Python 基础:模块与包
- Python 基础:面向对象
- Python 基础:文件基本操作
Python 基础:与时间相关的模块
Python 中处理时间和日期的标准库是 datetime
,而与时间相关的其他常用模块包括 time
、calendar
、dateutil
等。
以下是一些常见的操作方法:
获取当前时间
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 datetimenow = 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 blockreturn value
其中:
def
是 Python 中定义函数的关键字;function_name
是你所定义的函数名称;parameters
是函数的参数列表,可以为空;docstring
是可选的文档字符串,用于描述函数的功能;code block
是函数体,是对函数功能的具体实现;return
语句是可选的,用于返回函数的值,可以为空。
以下是一个简单的函数示例:
def add(a, b):"""This function adds two numbers."""c = a + breturn c
在函数定义后,可以通过调用函数并传入参数来调用该函数:
result = add(1, 2)
print(result) # 3
Python 基础:模块与包
Python 模块是一个以 .py
文件为扩展名的文件,其中包含了一些 Python 代码。在 Python 中,模块是一种封装方式,可以将相关的代码组织在一个文件中,方便管理和使用。
Python 中导入模块可以使用 import
语句,语法如下:
import module_name
例如,加载 Python 自带的 math
模块:
import mathsqrt_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 = nameself.age = agedef 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__
方法进行初始化,然后用 person1
和 person2
分别创建了两个实例,并调用 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()