元组和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("文件已删除")

@浙大疏锦行

相关推荐
鸿芯微控科技20 小时前
压电纳米定位分辨率怎么测?噪声、带宽、最小可检测位移与Python分析
开发语言·python·噪声分析·压电执行器·纳米定位·位移测量
用户77833661321121 小时前
从 0 搭一个关键词排名监控:核心思路 + 可运行代码
后端·python·api
Fanta丶21 小时前
14.Python闭包、装饰器
python
码云骑士21 小时前
99-混合搜索Hybrid-Search-BM25-稀疏稠密向量-融合排序
python
@小匠21 小时前
Spring Boot Nacos绑定 Map 时中文 key 导致启动失败:一次从复现到源码的排查实录
java·开发语言·前端
Knight_AL21 小时前
Lombok @Builder 踩坑:build() 前后对象类型不一样
android·java·开发语言
金銀銅鐵21 小时前
[Python] 借助 Turtle 逐字展示《醉翁亭记》
python
神明不懂浪漫21 小时前
【第五章】队列
开发语言·数据结构·经验分享·笔记·算法
吃好睡好便好21 小时前
MATLAB仿真框图3
开发语言·matlab·仿真·simulink