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处理JSON数据并生成条形图
Aug 05 Python
Python开发微信公众平台的方法详解【基于weixin-knife】
Jul 08 Python
Python实现解析Bit Torrent种子文件内容的方法
Aug 29 Python
Python之web模板应用
Dec 26 Python
python+pandas分析nginx日志的实例
Apr 28 Python
使用Python对微信好友进行数据分析
Jun 27 Python
Python 忽略warning的输出方法
Oct 18 Python
Pycharm+Scrapy安装并且初始化项目的方法
Jan 15 Python
Python解析命令行读取参数之argparse模块
Jul 26 Python
Pytorch模型转onnx模型实例
Jan 15 Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
Feb 17 Python
python 判断文件或文件夹是否存在
Mar 18 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
使用PHP获取当前url路径的函数以及服务器变量
2013/06/29 PHP
Laravel框架使用Redis的方法详解
2018/05/30 PHP
编辑浪子版表单验证类
2007/05/12 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
JS编程小常识很有用
2012/11/26 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
jQuery对象的selector属性用法实例
2014/12/27 Javascript
原生javascript实现DIV拖拽并计算重复面积
2015/01/02 Javascript
JQuery控制div外点击隐藏而div内点击不会隐藏的方法
2015/01/13 Javascript
Javascript核心读书有感之词法结构
2015/02/01 Javascript
分享10个原生JavaScript技巧
2015/04/20 Javascript
Node.js事件驱动
2015/06/18 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
vueJS简单的点击显示与隐藏的效果【实现代码】
2016/05/03 Javascript
BootStrap制作导航条实例代码
2016/05/06 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
2017/08/24 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
JS返回顶部实例代码
2020/08/09 Javascript
详解Angular6.0使用路由步骤(共7步)
2018/06/29 Javascript
vue页面更新patch的实现示例
2020/03/25 Javascript
详解JavaScript匿名函数和闭包
2020/07/10 Javascript
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
编写Python爬虫抓取暴走漫画上gif图片的实例分享
2016/04/20 Python
python线程池threadpool实现篇
2018/04/27 Python
Php多进程实现代码
2018/05/07 Python
python join方法使用详解
2019/07/30 Python
PyQt+socket实现远程操作服务器的方法示例
2019/08/22 Python
python实现串口通信的示例代码
2020/02/10 Python
Win10环境中如何实现python2和python3并存
2020/07/20 Python
解决pycharm修改代码后第一次运行不生效的问题
2021/02/06 Python
Html5 audio标签样式的修改
2016/01/28 HTML / CSS
五心教育心得体会
2014/09/04 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
演讲稿:​快乐,从不抱怨开始!
2019/04/02 职场文书
MySQL中的引号和反引号的区别与用法详解
2021/10/24 MySQL