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}
相关推荐
传奇开心果编程1 小时前
【Rust入门知识点学与练】第24课:Trait 基础
开发语言·学习·rust
颜颜yan_7 小时前
ESP-IDF 鸿蒙 PC 适配全记录:打通 Python、构建工具链与 ESP32-P4 固件生成
python·华为·harmonyos
言乐67 小时前
Python加速器4跨境网络加速器
运维·服务器·开发语言·网络·python
weixin_440730507 小时前
线程02-并发串行-互斥锁-Semaphore-Event
python·thread
金金计较.7 小时前
Go语言-3
java·开发语言·golang
张小凡vip8 小时前
python--爬虫--经验积累的遇到的坑
开发语言·爬虫·python
毕业设计7038 小时前
(免费领源码) 基于微信小程序的预制菜商城的设计与实现25172-java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·python·mysql·微信小程序·pycharm·微信开发者工具·推荐算法
xifangge20258 小时前
AGENTS.md 怎么写?涵盖 Java、Python、Vue、Go 的 8 套开箱即用模板
java·vue.js·python
Wang's Blog8 小时前
Java框架快速入门: Spring Security+OAuth2之云服务集成与多因子认证设计
java·开发语言·spring
门思科技9 小时前
LoRaWAN 网络容量估算:一个 SX1302 网关到底能带多少设备
开发语言·网络·php