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 相关文章推荐
Django中实现一个高性能计数器(Counter)实例
Jul 09 Python
Python中的对象,方法,类,实例,函数用法分析
Jan 15 Python
简单介绍Python下自己编写web框架的一些要点
Apr 29 Python
windows系统下Python环境的搭建(Aptana Studio)
Mar 06 Python
Python中property属性实例解析
Feb 10 Python
Python子类继承父类构造函数详解
Feb 19 Python
Python读取stdin方法实例
May 24 Python
使用python os模块复制文件到指定文件夹的方法
Aug 22 Python
Python绘制股票移动均线的实例
Aug 24 Python
详解python中index()、find()方法
Aug 29 Python
Pyorch之numpy与torch之间相互转换方式
Dec 31 Python
python实现邮件循环自动发件功能
Sep 11 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带公钥加密类分享(每次加密结果都不一样哦)
2014/08/20 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
thinkphp5 migrate数据库迁移工具
2018/02/20 PHP
可拖动窗口,附带鼠标控制渐变透明,开启关闭功能
2006/06/26 Javascript
JS解密入门 最终变量劫持
2008/06/25 Javascript
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
js delete 用法(删除对象属性及变量)
2014/08/24 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
2014/10/17 Javascript
js实现div弹出层的方法
2014/11/20 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
html的DOM中document对象images集合用法实例
2015/01/21 Javascript
jQuery结合CSS制作漂亮的select下拉菜单
2015/05/03 Javascript
获取JS中网页各种高宽与位置的方法总结
2016/07/27 Javascript
JS轮播图中缓动函数的封装
2020/11/25 Javascript
详解vue项目的构建,打包,发布全过程
2017/11/23 Javascript
Vue用v-for给src属性赋值的方法
2018/03/03 Javascript
jquery validate 实现动态增加/删除验证规则操作示例
2019/10/28 jQuery
vue 解决路由只变化参数页面组件不更新问题
2019/11/05 Javascript
[01:00]DOTA2 store: Collection of Artisan's Wonders
2015/08/12 DOTA
python画图把时间作为横坐标的方法
2019/07/07 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
2020/02/07 Python
wxPython修改文本框颜色过程解析
2020/02/14 Python
浅谈keras中的目标函数和优化函数MSE用法
2020/06/10 Python
用python读取xlsx文件
2020/12/17 Python
详解用 python-docx 创建浮动图片
2021/01/24 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
极简的HTML5模版
2015/07/09 HTML / CSS
HTML5拖放效果的实现代码
2016/11/17 HTML / CSS
Linux文件操作命令都有哪些
2015/02/27 面试题
应届生英语教师求职信
2013/11/05 职场文书
考试退步检讨书
2014/01/15 职场文书
降消项目实施方案
2014/03/30 职场文书
合伙经营协议书
2014/04/18 职场文书
新教师培训方案
2014/06/08 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
python保存大型 .mat 数据文件报错超出 IO 限制的操作
2021/05/10 Python