字符串转字典

字符串转字典可以使用内置参数eval()函数,只能针对字符串双引号是字典格式的字符串。

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = "{'python3':'ruby','java':'DevOps'}"

print(wulaoer,type(wulaoer))

wulaoer_dict = eval(wulaoer) #这里也可以使用exec('wulaoer_dict='+wulaoer)

print(wulaoer_dict,type(wulaoer_dict))

输出结果:

{'python3':'ruby','java':'DevOps'}

{'python3': 'ruby', 'java': 'DevOps'}

还可以使用ast模块

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

import ast

wulaoer = "{'python3':'ruby','java':'DevOps'}"

print(wulaoer,type(wulaoer))

wulaoer_dict = ast.literal_eval(wulaoer)

print(wulaoer_dict,type(wulaoer_dict))

输出结果:

{'python3':'ruby','java':'DevOps'}

{'python3': 'ruby', 'java': 'DevOps'}

使用json模块把字符串转字典,这里要注意,由于 json 语法规定 数组或对象之中的字符串必须使用双引号,不能使用单引号。

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

import json

wulaoer = '{"python3":"ruby","java":"DevOps"}'

#wulaoer = "{'python3':'ruby','java':'DevOps'}"

print(wulaoer,type(wulaoer))

wulaoer_dict= json.loads(wulaoer)

print(wulaoer_dict,type(wulaoer_dict))

输出结果:

{"python3":"ruby","java":"DevOps"}

{'python3': 'ruby', 'java': 'DevOps'}

字典转字符串

字典转成字符串可以使用字符串的内置函数str(),直接转成字符串.

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = {'python3':'ruby','java':'DevOps'}

print(wulaoer,type(wulaoer))

wulaoer_str= str(wulaoer)

print(wulaoer_dict,type(wulaoer_str))

输出结果:

{'python3': 'ruby', 'java': 'DevOps'}

{'python3': 'ruby', 'java': 'DevOps'}

上面使用的是str()内置函数,也可以通过字典转成列表之后再转成字符串,不过这种方法一般很少在开发中使用。

字符串转集合

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = "123456"

print(wulaoer,type(wulaoer))

wulaoer_set= set(wulaoer)

print(wulaoer_set,type(wulaoer_set))

输出结果:

123456

{'4', '1', '5', '3', '2', '6'}

集合转字符串

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = {'python3','ruby','java','DevOps'}

print(wulaoer,type(wulaoer))

wulaoer_str= str(wulaoer)

print(wulaoer_str,type(wulaoer_str))

输出结果:

{'ruby', 'DevOps', 'java', 'python3'}

{'ruby', 'DevOps', 'java', 'python3'}

集合转元组

集合转元组可以使用内置函数tuple()直接转换。

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = {'DevOps', 'python3', 'java', 'ruby'}

print(wulaoer,type(wulaoer))

wulaoer_tuple= tuple(wulaoer)

print(wulaoer_tuple,type(wulaoer_tuple))

输出结果:

{'python3', 'java', 'ruby', 'DevOps'}

('python3', 'java', 'ruby', 'DevOps')

元组转集合

同上,元组转集合也可以使用set()函数直接转换。

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer = ('python3','ruby','java','DevOps')

print(wulaoer,type(wulaoer))

wulaoer_set= set(wulaoer)

print(wulaoer_set,type(wulaoer_set))

输出结果:

('python3', 'ruby', 'java', 'DevOps')

{'DevOps', 'python3', 'java', 'ruby'}

总结,以上所有转换方式都有一种直接转换,是根据数据类型的函数直接转换成对应的数据类型,字典除外。字典的元素比较特殊,其他数据类型的元素一样,直接转换可以使用自己的内置函数,想转成什么数据类型,就用相应数据类型的内置函数即可,列表内置函数是list(), 字典的内置函数是dict(),字符串内置函数是str(),数字有几个数据类型整数int(),浮点数float(),复数commplex(),如果其他类型转数字可以先转字符串,然后通过字符串在转数字类型。下面举个例子:

元组转整数

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

wulaoer=('2','3','4')

wulaoer=[int(x) for x in wulaoer]

print(wulaoer)

#或

# wulaoer=('1','2')

# wolf=list(map(int,wulaoer))

# print(str(wolf))

输出结果:

[2, 3, 4]

map()中接收了一个int()函数,一个wulaoer列表对象,把对象中所有列表的元素转成整数。在举个例子:

#!/usr/bin/python3

#coding:utf-8

#吴老二个人博客~~~www.wulaoer.or

def wulaoer(x):

return x*x

print(list(map(wulaoer, (1, 2, 3, 4, 5, 6, 7, 8, 9))))

输出结果:

[1, 4, 9, 16, 25, 36, 49, 64, 81]

map()传入了一个元组对象,然后调用了wulaoer函数,把元组的元素分别x*x,然后转成列表。

python元组转字符串_python3字符串和字典、集合、元组的相互转换 | 吴老二相关推荐

  1. python中列表字典元组之间的区别_python之字典、元组、列表的区别

    1.列表:专门用于存储一串信息,列表用中括号[]定义,数据之间使用逗号,分隔 list_0=['a','b','c'] 列表的特点: 1)可修改.可增加.可删除 2)列表是有序的,可以遍历 3)可以将 ...

  2. python基础笔记第四课_字典集合笔记

    一.可变与不可变类型: 1.不可变类型:定义好变量后,不能修改.添加.删除 int .float. tuple. bool. str 都为不可变类型 2.可变类型:定义好变量后,可进行修改内部元素 l ...

  3. 以30字符宽居中输出python字符串_python3字符串

    字符串 字符串是 python 中最常用的数据类型.我们可以使用引号( ' 或 " )来创建字符串.创建字符串很简单,只要为变量分配一个值即可.例如: name = 'wingis' pyt ...

  4. 字符串、列表、字典、元组的基本操作

    #1列表 number=[1,2,3,4,5,6] # print(number) #将8,9放入到列表中 #number.append(8,9) .append()只支持往列表里放一个参数 numb ...

  5. 以30字符宽居中输出python字符串_Python3 字符串

    isdigit 和 isnumeric的区别? def dn(): dgt=[] num=[] c=0 for c in range(2**16): ch=chr(c) if ch.isdigit() ...

  6. python3纵向输出字符串_python3字符串输出常见面试题总结

    考察对于知识的理解,除了实际的代码运用,还有一种方法就是问答类的题型.不同于普通的概念叙述,小编认为即使是面试题也会带有一些数学题目的影响,不知道大家有没有想过,如果面试题是字符串方面的我们该如何作答 ...

  7. python 元组遍历_Python中的for循环:元组、列表、字典的遍历和相互转化

    Python for循环可以遍历任何序列的项目,如列表.字符串.元组.字典.集合等序列类型. 语法: for循环的语法格式如下: for iterating_var in sequence:state ...

  8. python数据类型可变和不可变_python3数据类型–可变与不可变 | 吴老二

    数据类型分为可变数据类型和不可变数据类型,可变数据类型是指当数据类型对应的变量发生了改变,并且对应的内存地址不会改变.不可变数据类型是指数据类型发生了改变,相应的变量对应的内存地址也发送了改变.这里提 ...

  9. python 字符串去重从小到大排列_python 序列(字符串、字符串、元组、集合、字典)...

    运行环境:python3.8 Anaconda 字符串 在python中,单个字符就是字符串. 字符串不可改变,使用单引号' ',双引号" ",三引号'" "' ...

最新文章

  1. Android学习路线
  2. Firefox 50优化Electrolysis
  3. 如何毕业后继续白嫖知网
  4. mysql 快照能否恢复某个表_mysql全库备份恢复某个表
  5. 学习笔记(11月08日)--异常
  6. 如何对待第一个女朋友
  7. pycharm新建python的快捷键_Python基础之PyCharm 的初始设置
  8. day29 java 的IO流(2)
  9. 4412 学习目录总结
  10. x86-64 下函数调用及栈帧原理
  11. ZK 在XML编辑器中设置.zul文件
  12. 惠普z800工作站bios设置_惠普台式机装win10系统及bios设置(uefi+gpt)
  13. 结构化程序设计方法:自顶向下,逐步求精
  14. 【家庭药箱系列】布洛芬小史
  15. 【JVM】运行时数据区介绍,程序计数器和虚拟机栈详解
  16. 申请加精—ERP实施方法论的比较(SAP、 Oracle、J.D.E、BANN、用友等实施方法论)...
  17. Win10系统无法打开桌面的个性化设置、显示设置及任务栏设置等,处理方法及参考链接如下。
  18. 这个工具能替代Excel,可惜90%的人都没用过!
  19. DS18B20温度转换与显示
  20. C语言 数组插入 – 插入法排序(顺序版)

热门文章

  1. 约瑟夫环的c语言描述
  2. 【C++】特殊类设计
  3. ERROR: Timeout after 10 minutes ERROR: Error fetching remote repo 'origin'
  4. MySQL学习笔记-第一篇-基础知识与命令
  5. 计算机丢失api-ms-win-crt-runtime-l1-1-0.dll快速解决方案
  6. AJAX实例--根据邮政编号动态获取省,市,县三级地区+仿百度搜索下拉提示
  7. 基于交替迭代法的交直流混合系统潮流计算matlab程序iEEE9节点系统算例
  8. 数据处理(1):十万加SHP数据重载导入标准字段图层
  9. FORTRAN动态链接库DLL from《FORTRAN95 程序设计》
  10. 微型计算机原理及应用 湖南大学,长沙理工大学2019考研大纲:823微机(含单片机)原理及应用...