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]是在之前拆分的基础上以}对字符串拆分,并滤掉空字符串。

以上这篇python实现字符串完美拆分split()的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 分享Python切分字符串的一个不错方法

    一同事问:有一字符串"abcdefghijklmn"如何用Python来切分,每四个一段,剩下的算一段.字符段切分,首先会想到split()和 re.split()函数,但仔细想了一下,这两个函数又不合适,因为,字符之间并没有空格,逗号,点号,TAB等分隔符,要切割的话很难实现. 只好退而求其次,使用常规方法: >>> s = 'abcdefghijklmn' >>> for i in range(0,len(s),4): print s[i:i+4

  • 在python 中split()使用多符号分割的例子

    调用re模块中的split()函数可以用多个符号进行分割 In [1]: import re In [2]: words = '我,来.上海?吃?上海菜' In [3]: wordlist = re.split(',|.|?',words) In [4]: print(wordlist) output: ['我', '来', '上海', '吃', '上海菜'] 以上这篇在python 中split()使用多符号分割的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们

  • python按照多个字符对字符串进行分割的方法

    本文实例讲述了python按照多个字符对字符串进行分割的方法.分享给大家供大家参考.具体分析如下: 这段python代码通过这规则表达式对字符串进行分割,使用\w作为分割符,只要不是字母和数字的就会被分割开来. import re DATA = "Hey, you - what are you doing here! welcome to jb51?" print re.findall(r"[\w']+", DATA) 输出结果如下 复制代码 代码如下: ['Hey

  • python 字符串split的用法分享

    比如我们的存储的格式的: 格式的: 姓名,年龄|另外一个用户姓名,年龄 name:haha,age:20|name:python,age:30|name:fef,age:55 那我们可以通过字符串对象的split方法切割字符串对象为列表. a = 'name:haha,age:20|name:python,age:30|name:fef,age:55' print a.split('|') 返回结果:['name:haha,age:20', 'name:python,age:30', 'name

  • python中split方法用法分析

    本文实例讲述了python中split方法用法.分享给大家供大家参考.具体分析如下: split 是非常重要的字符串方法,它是join的逆方法,用来将字符串分割成序列 >>> '1+2+3+4+5'.split('+') ['1', '2', '3', '4', '5'] >>> 'usr/bin/env'.split('/') ['usr', 'bin', 'env'] >>> 'usr/bin/env'.split('/') ['usr', 'bi

  • 举例详解Python中的split()函数的使用方法

    函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list) os.path.split():按照路径将文件名和路径分割开 一.函数说明 1.split()函数 语法:str.split(str="",num=string.count(str))[n] 参数说明: str:   表示为分隔符,默认为空格,但是不能为空('').若字符串中没有分

  • python实现字符串完美拆分split()的方法

    函数:split() 例子 我们想要将以下字符串rule进行拆分.字符串表示的是一个规则,由"-"得到"-".我们需要将规则中的条件属性与取值分别提取出来,存放在条件属性列表cf_list与值列表cv_list中,规则的结论的属性与取值也提取出来,分别存放结果属性列表rf_list与值列表rc_list. rule = '{age=Middle-aged,sex=Male,education=Bachelors}=>{native-country=United

  • python中字符串String及其常见操作指南(方法、函数)

    目录 下标与切片 常见方法 查找 替换 分割 大小写格式化 对齐格式化 清除空白字符 检查 补充:16个常用函数 总结 注意:对字符串的所有操作,原始数据(即原字符串)不变 !(字符串是不可变类型) 对原字符串操作会返回一个操作后的数据, 可以使用变量去接受数据 ----------------------------------------------------------------------------------------------------------------------

  • python将字符串转换成数组的方法

    python将字符串转换成数组的方法.分享给大家供大家参考.具体实现方法如下: #----------------------------------------- # Name: string_to_array.py # Author: Kevin Harris # Last Modified: 02/13/04 # Description: This Python script demonstrates # how to modify a string by # converting it

  • python判断字符串是否纯数字的方法

    本文实例讲述了python判断字符串是否纯数字的方法.分享给大家供大家参考.具体如下: 判断的代码如下,通过异常判断不能区分前面带正负号的区别,正则表达式可以根据自己需要比较灵活的写,通过isdigit方法用来判断是否是纯数字,测试代码如下 复制代码 代码如下: #!/usr/bin/python # -*- coding: utf-8 -*- a = "1" b = "1.2" c = "a" #通过抛出异常 def is_num_by_exc

  • python清除字符串里非数字字符的方法

    本文实例讲述了python清除字符串里非数字字符的方法.分享给大家供大家参考.具体如下: import re s = "how19 a*re 254y**ou?" # Using regular expressions print re.sub("\D", "", s) 希望本文所述对大家的Python程序设计有所帮助.

  • python实现字符串和日期相互转换的方法

    本文实例讲述了python实现字符串和日期相互转换的方法.分享给大家供大家参考.具体分析如下: 这里用的分别是time和datetime函数 ''' @author: jiangqh ''' import time,datetime # date to str print time.strftime("%Y-%m-%d %X", time.localtime()) #str to date t = time.strptime("2009 - 08 - 08", &q

  • python判断字符串是否是json格式方法分享

    在实际工作中,有时候需要对判断字符串是否为合法的json格式 解决方法使用json.loads,这样更加符合'Pythonic'写法 代码示例: Python import json def is_json(myjson): try: json_object = json.loads(myjson) except ValueError, e: return False return True 运行代码编辑模式复制折叠 输出结果: Python print is_json("{}") #

  • 对python 匹配字符串开头和结尾的方法详解

    1.你需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URL Scheme 等等.检 查 字 符 串 开 头 或 结 尾 的 一 个 简 单 方 法 是 使 用str.startswith() 或 者 是str.endswith()方法.比如: >>> filename = 'spam.txt' >>> filename.endswith('.txt') True >>> filename.startswith('file:') Fa

  • Python 存储字符串时节省空间的方法

    从 Python 3 开始,str 类型代表着 Unicode 字符串.取决于编码的类型,一个 Unicode 字符可能会占 4 个字节,这个有些时候有点浪费内存. 出于内存占用以及性能方面的考虑,Python 内部采用下面 3 种方式来存储 Unicode 字符: 一个字符占一个字节(Latin-1 编码) 一个字符占二个字节(UCS-2 编码) 一个字符占四个字节(UCS-4 编码) 使用 Python 进行开发的时候,我们会觉得字符串的处理都很类似,很多时候根本不需要注意这些差别.可是,当

  • python 将字符串完成特定的向右移动方法

    # 将字符串中的元素完成特定的向右移动,参数:字符串.移动长度 如:abcdef,移动2,结果:efabcd #原始方法,基本思想:末尾元素移动到开头,其他的元素依次向后移动.代码如下: def move(lt, n): lt = list(lt) #将字符串转换为列表 for i in range(n % len(lt)):#确定移动几次,比如说移动从长度和列表的长度相同时,就没必要移动 t = lt[len(lt) - 1] #取出末尾元素 for j in reversed(range(l

随机推荐