元组和OS模块

一、元组(Tuple)------ 不可变的 "容器"

元组是 Python 中有序、不可变、可存储任意数据类型 的序列结构,新手可以先记住核心特点:能存东西、不能改、用小括号 () 定义

1. 基本用法
(1)定义元组
复制代码
# 空元组
t1 = ()
# 单元素元组(必须加逗号,否则会被识别为普通变量)
t2 = (10,)  
# 多元素元组(常用)
t3 = (1, "hello", True, [1,2])  # 可以嵌套列表、字典等
# 省略括号(简写,不推荐新手用)
t4 = 10, 20, 30
(2)访问元素(和列表一样,下标从 0 开始)
复制代码
t = (10, 20, 30, 40)
print(t[0])   # 输出:10(取第一个元素)
print(t[-1])  # 输出:40(取最后一个元素)
print(t[1:3]) # 输出:(20, 30)(切片,左闭右开)
(3)核心特性:不可变

元组一旦创建,不能修改、添加、删除元素,这是和列表([])最大的区别:

复制代码
t = (10, 20, 30)
t[0] = 100  # 报错!TypeError: 'tuple' object does not support item assignment

二、OS 模块 ------ 操作电脑系统的 "工具包"

OS 模块是 Python 内置的核心模块,专门用来和操作系统交互(比如操作文件、文件夹、获取系统信息),新手先掌握最常用的几个功能即可。

1. 第一步:导入模块

使用前必须先导入:

复制代码
import os
2. 核心常用功能
(1)获取 / 切换当前工作目录
复制代码
# 1. 获取当前工作目录(你现在的代码在哪个文件夹里)
current_path = os.getcwd()
print("当前目录:", current_path)  # 比如输出:C:\Users\XXX\Desktop

# 2. 切换工作目录(相当于"cd"命令)
os.chdir("C:\\Users\\XXX\\Documents")  # 注意Windows路径用\\或r"C:\..."
print("切换后目录:", os.getcwd())
(2)操作文件夹(创建 / 删除 / 列出)
复制代码
# 1. 创建文件夹(mkdir:创建单层,makedirs:创建多层)
os.mkdir("test_folder")  # 创建单层文件夹
os.makedirs("folder1/folder2")  # 创建嵌套文件夹

# 2. 列出目录下的所有文件/文件夹
file_list = os.listdir("C:\\Users\\XXX\\Desktop")
print("桌面文件:", file_list)  # 输出桌面所有文件/文件夹名称的列表

# 3. 删除文件夹(rmdir:删除空文件夹,removedirs:删除多层空文件夹)
os.rmdir("test_folder")  # 删除空的test_folder
os.removedirs("folder1/folder2")  # 删除嵌套的空文件夹
(3)操作文件路径(重点!新手容易踩坑)
复制代码
# 1. 拼接路径(跨平台,比手动拼\或/更安全)
path = os.path.join("C:\\Users\\XXX", "Desktop", "test.txt")
print(path)  # Windows输出:C:\Users\XXX\Desktop\test.txt,Mac/Linux输出:/Users/XXX/Desktop/test.txt

# 2. 判断路径是否存在(文件/文件夹都能用)
if os.path.exists(path):
    print("路径存在")
else:
    print("路径不存在")

# 3. 判断是否是文件/文件夹
file_path = "C:\\Users\\XXX\\Desktop\\test.txt"
folder_path = "C:\\Users\\XXX\\Desktop"
print(os.path.isfile(file_path))  # True(是文件)
print(os.path.isdir(folder_path))  # True(是文件夹)

# 4. 获取文件大小(字节)
if os.path.isfile(file_path):
    size = os.path.getsize(file_path)
    print("文件大小:", size, "字节")
(4)删除文件
复制代码
file_path = "C:\\Users\\XXX\\Desktop\\test.txt"
if os.path.exists(file_path):
    os.remove(file_path)  # 删除文件(注意:不能删文件夹)
    print("文件已删除")

@浙大疏锦行

相关推荐
badhope3 小时前
Mobile-Skills:移动端技能可视化的创新实践
开发语言·人工智能·git·智能手机·github
码云数智-园园4 小时前
微服务架构下的分布式事务:在一致性与可用性之间寻找平衡
开发语言
吴佳浩4 小时前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
C++ 老炮儿的技术栈4 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
hz_zhangrl4 小时前
CCF-GESP 等级考试 2026年3月认证C++一级真题解析
开发语言·c++·gesp·gesp2026年3月·gespc++一级
Liu628884 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
IT猿手5 小时前
基于控制障碍函数的多无人机编队动态避障控制方法研究,MATLAB代码
开发语言·matlab·无人机·openclaw·多无人机动态避障路径规划·无人机编队
全栈凯哥5 小时前
18.Python中的导入类完全指南
python
AI科技星5 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
sunwenjian8865 小时前
Java进阶——IO 流
java·开发语言·python