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中函数的参数定义和可变参数用法实例分析
Jun 04 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
Dec 14 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
Apr 19 Python
使用Python获取并处理IP的类型及格式方法
Nov 01 Python
在python中实现强制关闭线程的示例
Jan 22 Python
Python中常用的8种字符串操作方法
May 06 Python
django ModelForm修改显示缩略图 imagefield类型的实例
Jul 28 Python
Python实现栈和队列的简单操作方法示例
Nov 29 Python
pycharm实现猜数游戏
Dec 07 Python
在python3.9下如何安装scrapy的方法
Feb 03 Python
python 高阶函数简单介绍
Feb 19 Python
Pytorch中使用ImageFolder读取数据集时忽略特定文件
Mar 23 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 session会话的安全性分析
2011/09/08 PHP
php实现的双色球算法示例
2017/06/20 PHP
php设计模式之观察者模式定义与用法经典示例
2019/09/19 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
jquery中实现标签切换效果的代码
2011/03/01 Javascript
jquery 实现密码框的显示与隐藏示例代码
2013/09/18 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
JS中的构造函数详细解析
2014/03/10 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
使用jquery解析XML示例代码
2014/09/05 Javascript
jQuery取消ajax请求的方法
2015/06/09 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
2017/03/02 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
基于JS对象创建常用方式及原理分析
2017/06/28 Javascript
给vue项目添加ESLint的详细步骤
2017/09/29 Javascript
Angular5.1新功能分享
2017/12/21 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
借助云开发实现小程序短信验证码的发送
2020/01/06 Javascript
[01:20:38]完美世界DOTA2联赛 GXR vs IO 第一场 11.07
2020/11/09 DOTA
Python wxPython库使用wx.ListBox创建列表框示例
2018/09/03 Python
python识别图像并提取文字的实现方法
2019/06/28 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统
2019/09/25 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
python 按钮点击关闭窗口的实现
2020/03/04 Python
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
remote接口和home接口主要作用
2013/05/15 面试题
妇产科护士自我鉴定
2013/10/15 职场文书
公司清洁工岗位职责
2013/12/14 职场文书
销售辞职信范文
2015/03/02 职场文书
英文产品推荐信
2015/03/27 职场文书
2015年社区宣传工作总结
2015/05/20 职场文书
JS数组方法some、every和find的使用详情
2021/10/05 Javascript