strip_split_join_replace

本文深入讲解了Python中常用的字符串操作方法,包括strip()方法去除字符串两端的特定字符,replace()方法替换字符串中的部分子串,split()方法按指定分隔符切分字符串,以及join()方法将序列中的元素以指定字符连接成新字符串。通过实例演示了每个方法的使用方式和参数设置。

##strip()方法
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)。

语法:
str.strip([str])

参数:
chars – 移除字符串头尾指定的字符。

str1 = '01ubjhk10'
str2 = '01ubjhk10'
print(str1.strip('10'))
print(str1.strip('01'))
ubjhk
ubjhk

##replace()
把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。

语法:
str.replace(old, new[, max])

参数:
old – 将被替换的子字符串。
new – 新字符串,用于替换old子字符串
max – 可选字符串, 替换不超过 max 次

返回值:
返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。

str = "this is string example....wow!!! this is really string"
print(str.replace("is", "was"))
print (str.replace("is", "was", 3))
thwas was string example....wow!!! thwas was really string
thwas was string example....wow!!! thwas is really string

##split()方法
通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串

语法:
str.split(str=" ", num=string.count(str)).

参数 :
str – 分隔符,默认为空格。
num – 分割次数。

返回值:
返回分割后的字符串列表。

str = "Line1-abcdef \nLine2-abc \nLine4-abcd"
print (str.split( ))
print (str.split(' ', 2))
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc', '\nLine4-abcd']

##join()方法

方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

语法:
str.join(sequence)

参数:
sequence – 要连接的元素序列。

返回值:
返回通过指定字符连接序列中元素后生成的新字符串。

li = ['my','name','is','bob'] 
print(' '.join(li))  #以 . 连接序列中的元素
print('_'.join(li))  #以 _ 连接序列中的元素
my name is bob
my_name_is_bob
考虑可再生能源出力不确定性的商业园区用户需求响应策略(Matlab代码实现)内容概要:本文围绕“考虑可再生能源出力不确定性的商业园区用户需求响应策略”展开,结合Matlab代码实现,研究在可再生能源(如风电、光伏)出力具有不确定性的背景下,商业园区如何制定有效的需求响应策略以优化能源调度和提升系统经济性。文中可能涉及不确定性建模(如场景生成与缩减)、优化模型构建(如随机规划、鲁棒优化)以及需求响应机制设计(如价格型、激励型),并通过Matlab仿真验证所提策略的有效性。此外,文档还列举了大量相关的电力系统、综合能源系统优化调度案例与代码资源,涵盖微电网调度、储能配置、负荷预测等多个方向,形成一个完整的科研支持体系。; 适合人群:具备一定电力系统、优化理论和Matlab编程基础的研究生、科研人员及从事能源系统规划与运行的工程技术人员。; 使用场景及目标:①学习如何建模可再生能源的不确定性并应用于需求响应优化;②掌握使用Matlab进行商业园区能源系统仿真与优化调度的方法;③复现论文结果或开展相关课题研究,提升科研效率与创新能力。; 阅读建议:建议结合文中提供的Matlab代码实例,逐步理解模型构建与求解过程,重点关注不确定性处理方法与需求响应机制的设计逻辑,同时可参考文档中列出的其他资源进行扩展学习与交叉验证。
### CUB_200_2011 数据集概述 CUB_200_2011 是一个广泛用于细粒度图像分类研究的数据集。该数据集包含了来自 200 种鸟类的超过 11,788 张图片,每张图片都附有详细的标注信息,包括边界框位置、关键点以及属性标签等[^1]。 ### 下载地址 官方提供的下载链接位于加州理工学院视觉计算实验室网站上。可以通过以下 URL 访问并获取数据集文件: [官网下载](https://www.vision.caltech.edu/datasets/cub_200_2011/) ### 使用说明 #### 文件结构 解压后的数据集中包含多个子目录和文件,以下是主要组成部分及其用途: - **images/**: 存储所有的原始图像文件。 - **bounding_boxes.txt**: 提供每张图像对应的边界框坐标信息。 - **image_class_labels.txt**: 显示每张图像所属的具体类别编号。 - **train_test_split.txt**: 定义哪些图像是训练集的一部分,哪些属于测试集。 - **classes.txt**: 列出了所有类别的名称及其对应 ID 编号。 - **parts/**: 包含部分标记的关键点信息,有助于定位鸟的不同部位(如喙、翅膀等)。 #### 加载与预处理示例代码 下面是一个简单的 Python 脚本,展示如何加载此数据集中的部分内容,并读取一张随机选取的图像连同其标签一起显示出来。 ```python import os from PIL import Image import random def load_image_and_label(base_path): images_dir = os.path.join(base_path, 'images') labels_file = os.path.join(base_path, 'image_class_labels.txt') with open(labels_file) as f: lines = f.readlines() image_id_to_label = {line.split()[0]: int(line.split()[1]) for line in lines} all_images = list(image_id_to_label.keys()) selected_image_id = random.choice(all_images) label = image_id_to_label[selected_image_id] img_filename = f'{selected_image_id}.jpg' class_name_file = os.path.join(base_path, 'classes.txt') classes_map = {} with open(class_name_file) as cf: for cl_line in cf: cid, cname = cl_line.strip().split(' ', 1) classes_map[int(cid)] = cname full_img_path = os.path.join(images_dir, img_filename.replace('.jpg', ''), img_filename) im = Image.open(full_img_path) return im, classes_map[label], label if __name__ == "__main__": base_dataset_path = './CUB_200_2011' # 替换为你本地保存路径 sample_image, bird_species, species_code = load_image_and_label(base_dataset_path) print(f"Species Code: {species_code}, Species Name: {bird_species}") sample_image.show() ``` 上述脚本实现了从 `CUB_200_2011` 数据集中随机抽取一幅图像的功能,并打印出它的物种编码及名称,最后还展示了这幅图像本身。 ### 注意事项 在实际应用过程中需要注意版权问题;虽然可以自由用于学术目的,但如果计划将其投入商业用途,则需联系原作者获得许可。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值