python杂记

dict 对象

dict.get()

是 Python 字典(dict)对象的一个方法,用于安全地获取字典中指定键的值,如果键不存在则返回默认值(不会抛出异常)。

python 复制代码
# 假设有一个字典
parameters = {
    "folder_name": "CollectedData",
    "voxel_size": 0.05
}

# 获取已存在的键
folder = parameters.get('folder_name', "DefaultFolder")
print(folder)  # 输出: CollectedData

# 获取不存在的键,返回默认值
robot_size = parameters.get('robot_size', 0.3)
print(robot_size)  # 输出: 0.3

# 如果不写默认值,找不到键时返回 None
value = parameters.get('not_exist')
print(value)  # 输出: None

文件对象

.readlines()

是 Python 文件对象的方法,用于一次性读取文件中所有的行,并以列表的形式返回,每一行为一个字符串(包括换行符)。

python 复制代码
with open('example.txt', 'r') as f:
	lines = f.readlines()
	print(lines)
	 # 结果: ['第一行内容\n', '第二行内容\n', '第三行内容\n']

line.rstrip()

去除字符串末尾 的空白字符(包括换行符 \n、空格等)

python 复制代码
line = "hello\n"
print(line.rstrip())  # 输出: 'hello'

line.strip()

去除字符串开头和结尾的所有空白字符(包括换行符、空格、制表符等)

python 复制代码
line = " hello\n"
print(line.strip())  # 输出: 'hello'

os 模块

os.getenv()

是 Python 标准库 os 模块中的一个函数,用于获取环境变量的值。

python 复制代码
import os

# 假设你设置了环境变量
# export MY_PATH=/data/project

# 获取环境变量的值
my_path = os.getenv('MY_PATH')
print(my_path)  # 输出: /data/project

# 如果环境变量不存在,返回默认值
default_path = os.getenv('NOT_EXIST', '/default/path')
print(default_path)  # 输出: /default/path

os.getcwd()

是 Python 标准库 os 模块中的一个函数,用于获取当前工作目录的绝对路径

python 复制代码
import os

# 获取当前工作目录
current_dir = os.getcwd()
print("当前工作目录为:", current_dir)  # 输出: /root/Development/iPlanner

os.listdir()

是 Python 标准库 os 模块中的一个函数,用于获取指定目录下所有文件和文件夹的名称列表(只返回名称,不带路径)。

python 复制代码
import os

# 假设目录 /root/Development/iPlanner/data 里有 a.txt、b.txt、subdir/
file_list = os.listdir('/root/Development/iPlanner/data')
print(file_list)
# 可能输出: ['a.txt', 'b.txt', 'subdir']
  • 通常配合 os.path.isfile()os.path.isdir() 判断是文件还是文件夹。

os.path.join()

是 Python 标准库 os.path 模块中的一个函数,用于拼接一个或多个路径组件,自动根据操作系统添加合适的路径分隔符(如 Linux 下是 /,Windows 下是 \)。

python 复制代码
import os

# 拼接单层路径
path1 = os.path.join("root", "Development", "iPlanner")
# 结果: 'root/Development/iPlanner'

# 拼接多层路径
path2 = os.path.join("/home/user", "data", "images")
# 结果: '/home/user/data/images'

os.path.join(*[root_folder, "data"])

  • *参数解包运算符 ,用于把列表中的每个元素作为单独的参数传递给函数,实现灵活的参数传递。
    详细解释
  • [root_folder, "data"] 是一个列表,里面有两个元素。
  • * 运算符会把这个列表拆开,变成两个独立的参数传给 os.path.join, 等价于 os.path.join(root_folder, "data")
    作用
  • 如果有一个长度不确定的路径列表 ,可以用 * 把它全部传递给 os.path.join,实现动态拼接路径。

os.path.isfile()

是 Python 标准库 os.path 模块中的一个函数,用于判断指定路径是否为一个普通文件(不是目录,也不是其他类型)。

python 复制代码
import os

file_path = "/root/Development/iPlanner/data/sample.txt"
print(os.path.isfile(file_path))  # 如果是文件,输出 True;否则输出 False

dir_path = "/root/Development/iPlanner/data/"
print(os.path.isfile(dir_path))   # 输出 False,因为这是目录

json 模块

json.load()

是 Python 标准库 json 模块中的一个函数,用于从打开的文件对象中读取 JSON 格式的数据,并将其解析为 Python 字典或列表。

python 复制代码
import json

# 假设有一个 JSON 文件 config.json,内容如下:
# {
#     "name": "iPlanner",
#     "version": 1.0
# }

with open('config.json', 'r') as f:
    data = json.load(f)

print(data)
# 结果: {'name': 'iPlanner', 'version': 1.0}
相关推荐
后端小张10 小时前
【JAVA 进阶】穿越之我在修仙世界学习 @Async 注解(深度解析)
java·开发语言·spring boot·后端·spring·注解·原理
Yeats_Liao10 小时前
Go Web 编程快速入门 18 - 附录B:查询与扫描
开发语言·前端·后端·golang
国服第二切图仔10 小时前
Rust实战开发之图形界面开发入门(egui crate)
开发语言·后端·rust
程序员爱钓鱼10 小时前
Python编程实战:文件读写(文本/二进制)详解与实战
后端·python·ipython
Zhangzy@10 小时前
Rust 依赖管理与版本控制
开发语言·后端·rust
百锦再10 小时前
第6章 结构体与方法
android·java·c++·python·rust·go
Momentary_SixthSense10 小时前
rust表格文件处理
开发语言·rust
小八四爱吃甜食10 小时前
【R语言】构建GO、KEGG相关不同物种的R包
开发语言·golang·r语言
音符犹如代码10 小时前
ArrayList常见面试题二
java·开发语言·面试·职场和发展
TheInk10 小时前
python学习笔记之Python基础教程(crossin全60课)
笔记·python·学习