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 相关文章推荐
有关wxpython pyqt内存占用问题分析
Jun 09 Python
跟老齐学Python之正规地说一句话
Sep 28 Python
python简单程序读取串口信息的方法
Mar 13 Python
Python的randrange()方法使用教程
May 15 Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 Python
Django自定义插件实现网站登录验证码功能
Apr 19 Python
Python如何生成树形图案
Jan 03 Python
Python Pandas批量读取csv文件到dataframe的方法
Oct 08 Python
浅谈python常用程序算法
Mar 22 Python
python-jwt用户认证食用教学的实现方法
Jan 19 Python
windows安装python超详细图文教程
May 21 Python
bat批处理之字符串操作的实现
Mar 16 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&&mysql)三
2006/10/09 PHP
Laravel 5框架学习之表单
2015/04/08 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
php用户名的密码加密更安全的方法
2019/06/21 PHP
使用隐藏的new来创建对象
2011/03/29 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
jquery ajax请求方式与提示用户正在处理请稍等
2014/09/01 Javascript
JavaScript实现防止网页被嵌入Frame框架的代码分享
2014/12/29 Javascript
jQuery 选择同时包含两个class的元素的实现方法
2016/06/01 Javascript
JavaScript无阻塞加载和defer、async详解
2017/02/26 Javascript
js 转义字符及URI编码详解
2017/02/28 Javascript
微信小程序canvas写字板效果及实例
2017/06/15 Javascript
使用Webpack提高Vue.js应用的方式汇总(四种)
2017/07/10 Javascript
vue计算属性无法监听到数组内部变化的解决方案
2019/11/06 Javascript
详解钉钉小程序组件之自定义模态框(弹窗封装实现)
2020/03/07 Javascript
前端性能优化建议
2020/09/17 Javascript
Python实现批量将word转html并将html内容发布至网站的方法
2015/07/14 Python
利用python实现微信头像加红色数字功能
2018/03/26 Python
pandas 将索引值相加的方法
2018/11/15 Python
解决python给列表里添加字典时被最后一个覆盖的问题
2019/01/21 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
Django 拼接两个queryset 或是两个不可以相加的对象实例
2020/03/28 Python
Python判断字符串是否为空和null方法实例
2020/04/26 Python
keras 获取某层的输入/输出 tensor 尺寸操作
2020/06/10 Python
Python爬虫爬取微博热搜保存为 Markdown 文件的源码
2021/02/22 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
CSS3 实现图形下落动画效果
2020/11/13 HTML / CSS
PHP如何去执行一个SQL语句
2016/03/05 面试题
HR求职自荐信范文
2014/06/21 职场文书
2015元旦晚会主持词(开场白+结束语)
2014/12/14 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书
简单聊聊Vue中的计算属性和属性侦听
2021/10/05 Vue.js
python数据可视化JupyterLab实用扩展程序Mito
2021/11/20 Python
MySQL中rank() over、dense_rank() over、row_number() over用法介绍
2022/03/23 MySQL
ant design vue的form表单取值方法
2022/06/01 Vue.js
如何基于python实现单目三维重建详解
2022/06/25 Python