这里有一个完全愚蠢的方法:import collections

string = """

apples: 20

oranges: 30

ripe: yes

farmers:

elmer fudd

lives in tv

farmer ted

lives close

farmer bill

lives far

selling: yes

veggies:

carrots

potatoes

"""

def funky_parse(inval):

lines = inval.split("\n")

items = collections.defaultdict(list)

at_val = False

key = ''

val = ''

last_indent = 0

for j, line in enumerate(lines):

indent = len(line) - len(line.lstrip())

if j != 0 and at_val and indent > last_indent > 4:

continue

if j != 0 and ":" in line:

if val:

items[key].append(val.strip())

at_val = False

key = ''

line = line.lstrip()

for i, c in enumerate(line, 1):

if at_val:

val += c

else:

key += c

if c == ':':

at_val = True

if i == len(line) and at_val and val:

items[key].append(val.strip())

val = ''

last_indent = indent

return items

print dict(funky_parse(string))

输出

^{pr2}$

python 冒号分隔_以冒号分隔的分析相关推荐

  1. python招聘广州黄埔_小案例:用Pandas分析招聘网Python岗位信息

    小案例: Python岗位分析_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com 1. 读取数据 import pandas as pd import numpy ...

  2. python汽车仿真_汽车山羊问题的分析以及Python和MATLAB仿真实验

    汽车和山羊问题 题目的背景介绍: 现有三扇门,其中一扇门后是一辆车,另外两扇门后是一头山羊. 选手从1,2,3号三扇门中选出一扇(仅标记,不打开),接着主持人再从未标记的两扇门中选出一扇打开. 主持人 ...

  3. python量化常用_简单介绍下量化分析的常用库TA-lib

    做python量化交易,尤其是做趋势跟踪的或者是K线指标分析跟踪的,TA-lib库基本都多多少少用到,搜索时候往往搜出来"塔利班",所以玩笑塔利班库.尤其对于从传统K线技术分析转计 ...

  4. python用户画像_京东小家电用户画像分析(python+tableau)

    一.项目背景 京东电商平台最近小家电类目的订单数量.产品浏览量和搜索数量等均有所下降,相关部门计划对小家电类目进行一次促销活动,希望能针对小家电用户的特征提出相应的建议. 二.需求拆解 促销活动主要包 ...

  5. python画版图_基于mask-RCNN的版图分析,MaskRCNN,版面

    数据集: PubLayNet 训练: code: import os import sys import random import torch import torchvision from tor ...

  6. python 鱼骨图_面向对象编程,鱼骨图分析法

    06.05 自我总结 一.面向对象编程 ​面向过程编程,核心是编程二字,过程指的是解决问题的步骤,即先干什么.后干什么.再干什么.然后干什么-- 与工厂的工艺流程差不多,前后都有影响 优点:复杂的问题 ...

  7. python opencv 连通域_基于OpenCV及连通域分析进行文本块分割

    上一次通过投影的方式进行了文本块分割,但这种方法有很大的局限性,要求分行清晰.不能有字符跨多行.不能倾斜,而且对噪声比较敏感.还是拿上一回的图片,但是我在上面加了一个比较大的字,得出的结果就有问题了: ...

  8. python for语句 不带冒号_为什么Python语句块要有一个分号(:)?

    我们都知道,Python的 if.for.while.def 语句第一行行尾需要加一个冒号,就像这样: if a == 1: b = 2 但是Python是依据缩进来判断代码层次的,那么这个分号是否是 ...

  9. python空行分隔代码_python空行分隔

    广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! 这是多行注释,使用双引号. 这是多行注释,使用双引号. 这是多行注释,使用双 ...

  10. python 列表的中括号[]与冒号:的作用

    python 列表的中括号[]与冒号:的作用 中括号[ ]:用于定义列表或引用列表.数组.字符串及元组中元素位置 list1 = ['physics', 'chemistry', 1997, 2000 ...

最新文章

  1. 底部固定菜单_捡起一只妲己团团,附送一个同校固定队友!还有这种好事?
  2. Highcharts X轴纵向显示
  3. 图像二值化之最大类间方差法(大津法,OTSU)
  4. 2、mybatis主配置文件之properties
  5. vue项目接口地址暴露_vue项目打包后可以配置接口地址的方法
  6. android闹钟唤醒不准的原因_俄罗斯睡眠专家:闹钟铃声选错了,可能扰乱你的内分泌...
  7. 第一台鸿蒙手机是,第一台预装鸿蒙OS的手机终于登场。
  8. 【OpenCV 例程200篇】58. 非线性滤波—中值滤波
  9. mysql schema数据混乱_MySQL之Schema与数据类型优化
  10. 不是美工却依然想写出美丽的CSS该肿么办
  11. Linux中文件权限查看和修改
  12. UE4分支的Git Flow
  13. 一、开启root登录权限 1.更改root密码 1)打开终端,输入【sudo -s】获得临时root权限,再输入【sudo passwd root】修改root密码。
  14. Absible#Ansible-Playbook的任务控制
  15. SQL注入-入门需了解项目
  16. ACID特性的实现原理与MySQL事务的关系
  17. 回忆篇,那些抹不去的童年记忆
  18. 详细介绍@GetMapping和@PostMapping的区别
  19. 具体的数据库存储过程的编写
  20. XTU 1242 Yada Number 巧妙打表

热门文章

  1. 互联网日报 | 6月8日 星期二 | 华为30亿成立数字能源公司;阿里明星直播业务“天猫星选”上线;苹果WWDC 2021开幕...
  2. 客户消费积分管理系统的设计与实现
  3. Adjacent Bit Counts
  4. 单个字符的输入输出函数
  5. C/S模型(客户/服务器模型)
  6. jieBa analyse.extract_tags
  7. HTB-Apocalyst
  8. FSDB Dumper
  9. Mathematica 分段函数 求导 求积分
  10. c语言求正方体的表面积和体积,2.事先编写一个程序,计算正方体、球体和圆柱体的表面积和体积。(提示:声明一个抽象基类 container,派...