python实现字符串完美拆分split()的方法
作者:_风起了_ 发布时间:2023-08-25 13:50:36
标签:python,字符串,拆分,split
函数:split()
例子
我们想要将以下字符串rule进行拆分。字符串表示的是一个规则,由“…”得到“…”。我们需要将规则中的条件属性与取值分别提取出来,存放在条件属性列表cf_list与值列表cv_list中,规则的结论的属性与取值也提取出来,分别存放结果属性列表rf_list与值列表rc_list。
rule = '{age=Middle-aged,sex=Male,education=Bachelors}=>{native-country=United-States}'
代码
rule = '{age=Middle-aged,sex=Male,education=Bachelors}=>{native-country=United-States}'
c_s, r_s = s.split("=>")
c_list = c_s.split("{")[1].split("}")[0].split(",")
r = r_s.split("{")[1].split("}")[0]
cf_list = []
cv_list = []
for c in c_list:
cf, cv = c.split("=")
cf_list.append(cf)
cv_list.append(cv)
rf, rv = r.split("=")
print(cf_list, cv_list, rf, rv)
输出结果:
([‘age', ‘sex', ‘education'], [‘Middle-aged', ‘Male', ‘Bachelors'], ‘native-country', ‘United-States')
部分代码说明:
1、
c_s, r_s = s.split("=>")
‘=>'为分隔符,将字符串rule分成两部分:{age=Middle-aged,sex=Male,education=Bachelors}与{native-country=United-States}
2、
c_list = c_s.split("{")[1].split("}")[0].split(",")
该行代码将字符串{age=Middle-aged,sex=Male,education=Bachelors}中的{与}滤掉后,将每个条件分开并存储在列表中。具体地,c_s.split("{")以{将字符串{age=Middle-aged,sex=Male,education=Bachelors}拆分成包含两个元素的列表['', ‘age=Middle-aged,sex=Male,education=Bachelors}'],第一个元素为空字符串,不包含任何信息,故只取拆分结果的第二个元素c_s.split("{")[1]。同理,c_s.split("{")[1].split("}")[0]是在之前拆分的基础上以}对字符串拆分,并滤掉空字符串。
来源:https://blog.csdn.net/u013468614/article/details/85410221


猜你喜欢
- 1.主要用到 QFileDialog 方法打开本地文件2.界面打开前:打开后:3. 代码import sysfrom PyQt5 impor
- 利用Python写了一个小脚本想要传给使用Windows但没有装Python的朋友执行,这时候就可以利用将档案包装成exe档案,让没有Pyt
- 插入数据insert into 表名(列名1,列名2,列名3) values(值1,值2,值3);insert into user(user
- 本文实例为大家分享了python实现石头剪刀布的具体代码,供大家参考,具体内容如下老师布置了一个石头剪刀布的作业,要可视化,还是先用代码实现
- 本文实例讲述了javascript设计模式 – 原型模式原理与应用。分享给大家供大家参考,具体如下:介绍:在日常的开发过程中,我们经常会利用
- 本文实例讲述了Python的多态性。分享给大家供大家参考。具体如下:#!/usr/bin/env python# polymorphism
- MySQL理论上使用的内存 = 全局共享内存 + max_connections×线程独享内存。也就是:innodb_buffer_pool
- 使用Python爬虫登录系统之后,能够实现的操作就多了很多,下面大致介绍下如何使用Python模拟登录。我们都知道,在前端的加密验证,只要把
- 本文实例讲述了Python面向对象之类和实例用法。分享给大家供大家参考,具体如下:类虽然 Python 是解释性语言,但是它是面向对象的,能
- 1.pycharm运行python脚本的过程使用pycharm等编辑器run/debug运行python脚本时,编辑器会通过本地python
- 迭代器&生成器在 Python 中,迭代器和生成器都是用来遍历数据集合的工具,可以按需逐个生成或返回数据,从而避免一次性加载整个数据
- 最近利用tkinter+python+pyinstaller实现了小工具的项目,在此记录下pyinstaller相关参数以及爬过的坑。一、p
- python聊天室很多人都觉得微信,QQ,ICQ(我不知道现在还能不能用了)都过于垃圾,想要自己做一个聊天室(或是聊天软件),所以我们可以自
- Golang 的 1.13 版本 与 1.14 版本对 defer 进行了两次优化,使得 defer 的性能开销在大部分场景下都得到大幅降低
- 使用python编写了共六种图像增强算法:1)基于直方图均衡化2)基于拉普拉斯算子3)基于对数变换4)基于伽马变换5)限制对比度自适应直方图
- //记一个问题(已经解决2016.5.5)//在公司项目中遇见一个添加单选项的需求,采用ajax一步请求。为节约资源添加后不刷新网页,js动
- 前言今天我看到线性规划模型开头的介绍,特别不错,因此,我把它记录下来了,分享给大家在工程技术、经济管理、科学研究、军事作战训练及日常生活等众
- 查看两个数据库的同名表的字段名差异问题描述开发过程中有多个测试环境,测试环境 A 加了字段,测试环境 B 忘了加,字段名对不上,同一项目就报
- 使用 WinHttpRequest 伪造 HTTP 头信息,伪造 Referer 等信息。由于微软封锁了 XmlHttp 对象,所以无法伪造
- random.randomrandom.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0random.