python实现字符串和字典的转换


Posted in Python onSeptember 29, 2018

一、把一个字符串的内容提取出来,并放到字典中

流程如下:

1、得到字符串s,通过分割提取得到s1(是个列表)
s=”name=lyy&age=3&sex=women&boyfriend=czt”

2、需要再对s1进行拆分,此时s1只有4个元素,对s1进行遍历,拿到类似“name=lyy”的字符串,即s2

3、同样通过分割把s2分割成s3列表

4、s3为[name,lyy],即为字典的键和值赋值,键=s3[0],值=s3[1]

代码如下:

# -*- coding: utf-8 -*-

s="name=lyy&age=3&sex=women&boyfriend=czt"
d={

}

s1=s.split("&")
# print s1
for i in xrange(4):
  s2=s1[i]
#  print s2
  s3=s2.split("=")
  print s3
  key=s3[0]
  value=s3[1]
  d[key]=value
print d

改进代码,改进之处——直接使用s2 in s1执行遍历

# -*- coding: utf-8 -*-

s="name=lyy&age=3&sex=women&boyfriend=czt"
d={

}

s1=s.split("&")
# print s1
for s2 in s1:
  s3=s2.split("=")
  print s3
  key=s3[0]
  value=s3[1]
  d[key]=value
  print d

二、把一个字典中的内容提取出来,并存储为字符串

流程如下:

1、把字典中的项目取出来,使用items方法,使得字典的键值对变成列表s1的每一个元素,s1是列表

2、遍历s1的每一个元素,先需要读取每一个元素的键和值,即key=s1[0],value=s1[2]

3、这时key和value分别都是字符串,用“=”连接起来

4、把每一个等式连接起来使用到append方法,创建列表存储每次连接好的等式

5、使用列表的join方法,把“&”插入列表中

# -*- coding: utf-8 -*-

d={'age': '3', 'boyfriend': 'czt', 'name': 'lyy', 'sex': 'women'}
s1=d.items()
lst=[]
print s1
for i in xrange(4):
  s2=s1[i]
  print s2
  key=s2[0]
  value=s2[1]
  print key
  print value
  s3=key+"="+value
  print s3
  lst.append(s3)
print lst
print "&".join(lst)

同样简化步骤,循环内语句这样写:

for s2 in s1:
  key=s2[0]
  value=s2[1]
  s3=key+"="+value
  lst.append(s3)

s2里面对应就是两个元素,简化:

for s2 in s1:
  key,value=s2
  s3=key+"="+value
  lst.append(s3)

发现s2同样可以省略,但是上述的key和value连接依赖s2,可用格式化成字符串输出来摆脱这种依赖,简化如下

# -*- coding: utf-8 -*-

d={'age': '3', 'boyfriend': 'czt', 'name': 'lyy', 'sex': 'women'}
s1=d.items()
lst=[]
for key,value in s1:
  s3="%s=%s"%(key,value)
  lst.append(s3)
print "&".join(lst)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python字典基本操作实例分析
Jul 11 Python
Python实现公历(阳历)转农历(阴历)的方法示例
Aug 22 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
Nov 16 Python
新手常见6种的python报错及解决方法
Mar 09 Python
python 字典中文key处理,读取,比较方法
Jul 06 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
Python字典的核心底层原理讲解
Jan 24 Python
django模板结构优化的方法
Feb 28 Python
Python标准库itertools的使用方法
Jan 17 Python
在python中求分布函数相关的包实例
Apr 15 Python
django表单中的按钮获取数据的实例分析
Jul 31 Python
python可视化分析绘制带趋势线的散点图和边缘直方图
Jun 25 Python
python实现字符串中字符分类及个数统计
Sep 28 #Python
python中使用zip函数出现错误的原因
Sep 28 #Python
python中的for循环
Sep 28 #Python
Django migrations 默认目录修改的方法教程
Sep 28 #Python
python数据结构之线性表的顺序存储结构
Sep 28 #Python
python实现顺序表的简单代码
Sep 28 #Python
linux安装Python3.4.2的操作方法
Sep 28 #Python
You might like
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
PHP编写daemon process详解及实例代码
2016/09/30 PHP
PHP对XML内容进行修改和删除实例代码
2016/10/26 PHP
javascript学习网址备忘
2007/05/29 Javascript
javascript offsetX与layerX区别
2010/03/12 Javascript
理解Javascript_06_理解对象的创建过程
2010/10/15 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
2013/04/11 Javascript
js正文内容高亮效果的实现方法
2013/06/30 Javascript
jquery ajax post提交数据乱码
2013/11/05 Javascript
jQuery蓝色风格滑动导航栏代码分享
2015/08/19 Javascript
举例讲解JavaScript substring()的使用方法
2015/11/09 Javascript
用js写的一个路由(简单实例)
2016/09/24 Javascript
关于Stream和Buffer的相互转换详解
2017/07/26 Javascript
Angular项目中$scope.$apply()方法的使用详解
2017/07/26 Javascript
angular中的cookie读写方法
2017/08/02 Javascript
JS实现颜色的10进制转化成rgba格式的方法
2017/09/04 Javascript
详解Vue底部导航栏组件
2019/05/02 Javascript
vue以组件或者插件的形式实现throttle或者debounce
2019/05/22 Javascript
Vue 图片压缩并上传至服务器功能
2020/01/15 Javascript
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python多线程实例教程
2014/09/06 Python
Python利用正则表达式实现计算器算法思路解析
2018/04/25 Python
python中metaclass原理与用法详解
2019/06/25 Python
python读取并写入mat文件的方法
2019/07/12 Python
Python实现自动签到脚本的示例代码
2020/08/19 Python
python在地图上画比例的实例详解
2020/11/13 Python
解决python3输入的坑——input()
2020/12/05 Python
客服专员岗位职责
2014/02/28 职场文书
土木工程师职业规划范文
2014/03/07 职场文书
艺术教育实施方案
2014/05/03 职场文书
农村党支部书记党群众路线四风问题整改措施
2014/09/26 职场文书
教师作风建设剖析材料
2014/10/11 职场文书
入党介绍人意见2015
2015/06/01 职场文书
暑期家教宣传单
2015/07/14 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android