装载自:http://smilejay.com/2014/10/convert_string_to_dict_python/

我将数据库连接相关的一些用户名/密码/host/port等各种东西作为一个string保存在了数据库中,我要用MySQLdb检查这些数据库连接信息是够能正常使用,需要将数据库信息中的用户名/密码/host/port等信息作为参数传给MySQLdb.Connect()。者就需要将'{“host”:”192.168.11.22″, “port”:3306, “user”:”abc”,”passwd”:”123″, “db”:”mydb”, “connect_timeout”:10}’”这样的string转化为dict。

在python中,将string转为一个dict,我所知有如下3中方法:

1. ast.literal_eval() 这是我常用的,依赖python2.6以上,据介绍时说比直接eval更安全一些,我没细究哈。

2. eval() 在string内容比较可控/安全的前提下,eval是不错的方法。

3. json.loads() 用json提供的loads方法是不错的,不过key/value中的string被转化为了unicode哦。

Created on Oct 14, 2014@author: Jay

'''import MySQLdb

import ast

import json

def my_run():

try:

s = '{"host":"192.168.11.22", "port":3306, "user":"abc",\

"passwd":"123", "db":"mydb", "connect_timeout":10}'

d = ast.literal_eval(s)

print type(d)

print d

d1 = eval(s)

print type(d1)

print d1

d2 = json.loads(s)

print type(d2)

print d2

MySQLdb.Connect(host=d['host'], port=d['port'], user=d['user'],

passwd=d['passwd'], db=d['db'],

connect_timeout=d['connect_timeout'])

print 'right'

except Exception, e:

print 'wrong %s' % e

if __name__ == '__main__':

my_run()

参考资料:

http://stackoverflow.com/questions/988228/converting-a-string-to-dictionary

http://stackoverflow.com/questions/15596121/converting-a-string-into-dictionary-python

python将string转换为json_python -- 将string转换成dict的方法相关推荐

  1. 把英文转换成数字python_python实现将英文单词表示的数字转换成阿拉伯数字的方法...

    本文实例讲述了python实现将英文单词表示的数字转换成阿拉伯数字的方法.分享给大家供大家参考.具体实现方法如下: import re _known = { 'zero': 0, 'one': 1, ...

  2. python将object转换为float_DataFrame中的object转换成float的方法

    DataFrame中的object转换成float的方法 数据类型转换: 今天遇到一个问题,就是DataFrame类型的数据里是str型的数字,想把数字转换为int 或float:百度没有发现好的,也 ...

  3. python将list转换为dataframe_Pandas把dataframe或series转换成list的方法

    把dataframe转换为list 输入多维dataframe: df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 'b':[3,5,6,2,4,6,7, ...

  4. python转json的函数_python将字符串转换成json的方法小结

    最近在工作中遇到了一个小问题,如果要将字符串型的数据转换成dict类型,我第一时间就想到了使用json函数.但是里面出现了一些问题 1.通过json来转换: In [1]: import json I ...

  5. python解析mht文件_php解析mht文件转换成html的方法

    本篇文章主要介绍php解析mht文件转换成html的方法,感兴趣的朋友参考下,希望对大家有所帮助. php解析mht文件,使用编辑器打开可以看到base64编码所以,mht是可以转换成html的. / ...

  6. python列表转集合_Pandas把dataframe或series转换成list的方法

    把dataframe转换为list 输入多维dataframe: ? 1 df= pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9],'b':[3,5,6,2,4,6, ...

  7. Python将汉字数字转换成阿拉伯数字的方法

    Python将汉字数字转换成阿拉伯数字的方法 - 玩蛇网 http://www.iplaypy.com/code/base/b2600.html 用Python语言来为不同数字之间做转换之前就有介绍过 ...

  8. python将多个3维数组转换成4维数组时,出现(m,)

    python将多个3维数组转换成4维数组时,出现(m,)错误. 原因:多个3维数组件存在不同维度的数组,例如大部分3维数组为(n,l,l),而有一个或多个为(m, l, l):且则会出现上述错误. 解 ...

  9. python将视频按帧读取并转换成图片

    python将视频按帧读取并转换成图片 代码如下 from glob import glob import cv2 import tqdm import os video_path = glob(r' ...

最新文章

  1. Python 爬虫框架Scrapy安装汇总
  2. react中ref的使用
  3. DeepMind提出强化学习新算法,教智能体从零学控制
  4. 轻松恢复误删除的共享文件,DPM2007系列之六
  5. labview波形图两个游标,LabVIEW数据可视化:使用波形图表控件逐点显示曲线的方法...
  6. py匹配字符串中间的字符串
  7. 重磅!神策 2018 数据驱动大会报名正式开启!
  8. 北斗导航 | RAIM:改进的最优加权平均解(IOWAS)算法(接收机自主完好性监测)
  9. 【MySQL随手记】一个踩坑记录:在安全更新模式下进行数据的修改与删除
  10. 我们距离“云”还有多远?
  11. LUOGU P2827 蚯蚓 (noip 2016)
  12. Javascript面向对象编程:构造函数的继承
  13. EZchip将推全球首款100核64位ARM A-53芯片
  14. 4g内存只有1.6g可用_linux服务器内存异常,究竟在哪消耗了2.5G?
  15. jsp在校大学生助学贷款管理系统
  16. HTML邮件 兼容问题
  17. 表白生成器PHP源码,带自动生成的php表白程序 v1.0
  18. 华为PPPoE、PPP/MP、IP-Trunk配置
  19. 安卓手机卸载手机自带软件(adb)
  20. python 播放本地音乐_python播音乐_python放音乐_python本地音乐播放器 - 云+社区 - 腾讯云...

热门文章

  1. 剑指offer:面试题36. 二叉搜索树与双向链表
  2. 数据库低端sql查询语句片段
  3. 关于hp惠普笔记本电脑清洗(真的要水洗哟)
  4. 【进大厂大数据爬虫技术核心难点】纯前端开发的爬虫程序,很多BAT技术大咖都为之惊叹
  5. LTE-怎么获取上行资源
  6. s-sgdisk源码分析 “--set-alignment=value分区对齐参数”
  7. Linux tcpdump命令详解与Wireshark
  8. SpringBoot设置Session失效时间
  9. javascript的call()方法与apply()方法的理解
  10. python 自动生成C++代码 (代码生成器)