- 获取当前工作目录
os.getcwd() 用于返回当前 Python 脚本的工作目录。
import os
current_dir = os.getcwd()
print(current_dir)
- 改变当前工作目录
os.chdir(path) 可将当前工作目录更改为指定的 path。
import os
os.chdir('/new/directory/path')
- 列出目录内容
os.listdir(path='.') 会返回指定目录下的所有文件和子目录的列表。若不指定 path,则默认为当前目录。
import os
file_list = os.listdir()
print(file_list)
- 创建目录
os.mkdir(path) 用于创建一个新目录,若目录已存在则会抛出 FileExistsError 异常。os.makedirs(path, exist_ok=False) 可以递归创建目录,exist_ok 为 True 时,若目录已存在不会报错。
import os
os.mkdir('new_directory')
os.makedirs('new/directory/structure', exist_ok=True)
- 删除目录
os.rmdir(path) 用于删除空目录,若目录不为空则会抛出 OSError 异常。shutil.rmtree(path) 可以递归删除目录及其所有内容。
import os
import shutil
os.rmdir('empty_directory')
shutil.rmtree('non_empty_directory')
- 重命名文件或目录
os.rename(src, dst) 可将 src 重命名为 dst。
import os
os.rename('old_name.txt', 'new_name.txt')
- 删除文件
os.remove(path) 用于删除指定的文件。
import os
os.remove('unwanted_file.txt')
- 拼接路径
os.path.join(path1, path2, ...) 可以将多个路径组件拼接成一个完整的路径,会根据不同操作系统使用正确的路径分隔符。
import os
full_path = os.path.join('parent_dir', 'child_dir', 'file.txt')
print(full_path)
- 获取文件或目录的基本名称
os.path.basename(path) 会返回路径的最后一个组件。
import os
file_name = os.path.basename('/path/to/file.txt')
print(file_name)
- 获取文件或目录的父目录
os.path.dirname(path) 会返回路径的目录部分。
import os
dir_name = os.path.dirname('/path/to/file.txt')
print(dir_name)
- 检查路径是否存在
os.path.exists(path) 用于检查指定的路径是否存在。
import os
if os.path.exists('/path/to/somewhere'):
print('路径存在')
else:
print('路径不存在')
- 判断路径是文件还是目录
os.path.isfile(path) 用于判断路径是否为文件。os.path.isdir(path) 用于判断路径是否为目录。
import os
if os.path.isfile('/path/to/file.txt'):
print('是文件')
if os.path.isdir('/path/to/directory'):
print('是目录')
sys.argv 是一个包含命令行参数的列表,sys.argv[0] 是脚本的名称,后续元素是传递给脚本的参数。
import sys
print(f'脚本名称: {sys.argv[0]}')
if len(sys.argv) > 1:
print('传递的参数:')
for arg in sys.argv[1:]:
print(arg)
sys.exit([arg]) 用于退出 Python 解释器,arg 可以是一个整数,表示退出状态码,默认值为 0 表示正常退出。
import sys
if some_condition:
sys.exit(1)
sys.version 会返回 Python 解释器的版本信息。sys.platform 会返回当前操作系统的平台名称。
import sys
print(f'Python 版本: {sys.version}')
print(f'操作系统平台: {sys.platform}')
datetime 类
- 用于表示日期和时间,可通过
year、month、day、hour、minute、second 等属性访问具体信息。
from datetime import datetime
now = datetime.now()
print(f'当前日期和时间: {now}')
print(f'年份: {now.year}')
print(f'月份: {now.month}')
date 类
from datetime import date
today = date.today()
print(f'今天的日期: {today}')
time 类
from datetime import time
t = time(12, 30, 0)
print(f'时间: {t}')
strftime(format) 方法可将日期和时间对象格式化为字符串,format 是格式化字符串。
from datetime import datetime
now = datetime.now()
formatted_date = now.strftime('%Y-%m-%d %H:%M:%S')
print(formatted_date)
strptime(date_string, format) 方法可将字符串解析为日期和时间对象。
from datetime import datetime
date_str = '2024-10-01 12:30:00'
dt = datetime.strptime(date_str, '%Y-%m-%d %H:%M:%S')
print(dt)
random.random()
- 生成一个介于
0.0 到 1.0 之间的随机浮点数。
import random
random_float = random.random()
print(random_float)
random.randint(a, b)
- 生成一个介于
a 到 b 之间(包括 a 和 b)的随机整数。
import random
random_int = random.randint(1, 10)
print(random_int)
random.uniform(a, b)
import random
random_float_range = random.uniform(2.5, 5.5)
print(random_float_range)
random.choice(seq)
import random
my_list = [1, 2, 3, 4, 5]
random_choice = random.choice(my_list)
print(random_choice)
random.sample(population, k)
- 从
population 序列中随机选择 k 个不重复的元素。
import random
my_list = [1, 2, 3, 4, 5]
random_sample = random.sample(my_list, 3)
print(random_sample)
random.shuffle(x) 用于将可变序列 x 中的元素随机打乱顺序。
import random
my_list = [1, 2, 3, 4, 5]
random.shuffle(my_list)
print(my_list)
json.dumps(obj, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw) 可将 Python 对象编码为 JSON 字符串。
import json
data = {'name': 'John', 'age': 30, 'city': 'New York'}
json_str = json.dumps(data)
print(json_str)
json.loads(s, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw) 可将 JSON 字符串解码为 Python 对象。
import json
json_str = '{"name": "John", "age": 30, "city": "New York"}'
data = json.loads(json_str)
print(data)
json.dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw) 可将 Python 对象写入 JSON 文件。json.load(fp, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw) 可从 JSON 文件中读取数据并解码为 Python 对象。
import json
data = {'name': 'John', 'age': 30, 'city': 'New York'}
with open('data.json', 'w') as f:
json.dump(data, f)
with open('data.json', 'r') as f:
loaded_data = json.load(f)
print(loaded_data)