在Python中字符串、列表、元组、字典之间的相互转换


Posted in Python onNovember 15, 2019

一、字符串(str)

字符串转换为列表

使用list()方法

str_1 = "1235"
str_2 = 'zhangsan'
str_3 = '''lisi'''
tuple_1 = list(str_1)
tuple_2 = list(str_2)
tuple_3 = list(str_3)
print(type(tuple_1))
print(type(tuple_2))
print(type(tuple_3))
print(tuple_1)
print(tuple_2)
print(tuple_3)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

使用Python中字符串的内置方法split()

Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串
语法:str.split(str="", num=string.count(str)).
①str ? 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
②num ? 分割次数。默认为 -1, 即分隔所有。

str_1 = "12 35 213"
str_2 = 'zhang san shi a '
str_3 = 'zhang san shi a '
str_4 = '''li si wang wu'''
list_1 = str_1.split(" ")
list_2 = str_2.split(" ",1)
list_3 = str_3.split(" ")
list_4 = str_4.split(" ",2)
print(type(list_1))
print(type(list_2))
print(type(list_3))
print(type(list_4))
print(list_1)
print(list_2)
print(list_3)
print(list_4)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

字符串 转换为 元组

使用tuple()方法

str_1 = "1235"
str_2 = 'zhangsan'
str_3 = '''lisi'''
list_1 = tuple(str_1)
list_2 = tuple(str_2)
list_3 = tuple(str_3)
print(type(list_1))
print(type(list_2))
print(type(list_3))
print(list_1)
print(list_2)
print(list_3)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

字符串 转换为 字典

利用eval()方法,可以将字典格式的字符串转换为字典

eval() 函数用来执行一个字符串表达式,并返回表达式的值。
语法:eval(expression[, globals[, locals]])
①expression ? 表达式。
②globals ? 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。③locals ? 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

str_1 = "{'name':'zhangsan','age':14,'gender':'girl'}"
dict_1 = eval(str_1)
print(type(dict_1))
print(dict_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

利用json.loads()方法,可以将字典格式的字符串转换为字典

json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。
语法:json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

import json

str_1 = '{"name":"xiaoming","age":18}'
dict_1 = json.loads(str_1)
print(type(dict_1))
print(dict_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

二、列表(list)

列表转字符串

利用‘'.join()将列表中的内容拼接程一个字符串

Python join() 方法用于将序列中的元素(必须是str) 以指定的字符(''中指定的) 连接生成一个新的字符串。

list_1 = ['a', 'b', 'c']
str_1 = ''.join(list_1)
print(type(str_1))
print(str_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

列表转字典

利用for in rang将两个列表转换为字典

list_1 = ['a', 'b', 'c']
list_2 = [1, 2, 3]
dict_1 = {}
for i in range(len(list_1)):
 dict_1[list_1[i]] = list_2[i]
print(type(dict_1))
print(dict_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

利用python内置方法dict()和zip()将两个列表转换为字典

dict() 函数用于创建一个字典。
语法:class dict(**kwarg)
class dict(mapping, **kwarg)
class dict(iterable, kwarg)
kwargs ? 关键字
②mapping ? 元素的容器。
③iterable ? 可迭代对象。

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
语法:zip([iterable, …])
iterabl ? 一个或多个迭代器;

list_1 = ['name', 'age']
list_2 = ['zhangsan',18]
dict_1 = dict(zip(list_1, list_2))
print(type(dict_1))
print(dict_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

三、元组(tuple)

元组转换为字符串

  • 使用方法__str__
  • 返回一个对象的描述信息
tuple_1 = (1, 2, 3)
str_1 = tuple_1.__str__()
print(type(str_1))
print(str_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

元组转换为列表使用方法list()

list() 方法用于将元组转换为列表。
语法:list( tup )
tup ? 要转换为列表的元组。

tuple_1 = (1, 2, 3)
list_1 = list(tuple_1)
print(type(list_1))
print(list_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

元组不能转换为字典

四、字典(dict)

字典转换为字符串

使用 json.dumps()方法

json.dumps 用于将 Python 对象编码成 JSON 字符串。
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding=“utf-8”, default=None, sort_keys=False, **kw)

字典转换为元组

  • 使用方法 tuple()
  • 字典在转换为元组之后,只会保存关键字
dict_1 = {"name":"zhangsan",
   "age":18}
tuple_1 = tuple(dict_1)
print(type(tuple_1))
print(tuple_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

字典转换为列表

  • 使用方法 list()
  • 字典在转换为列表之后,只会保存关键字
dict_1 = {"name":"zhangsan",
   "age":18}
list_1 = list(dict_1)
print(type(list_1))
print(list_1)

运行结果:

在Python中字符串、列表、元组、字典之间的相互转换

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
如何运行Python程序的方法
Apr 21 Python
Python中比较特别的除法运算和幂运算介绍
Apr 05 Python
对python 读取线的shp文件实例详解
Dec 22 Python
解析Python的缩进规则的使用
Jan 16 Python
使用python实现简单五子棋游戏
Jun 18 Python
python实现得到当前登录用户信息的方法
Jun 21 Python
利用Python绘制有趣的万圣节南瓜怪效果
Oct 31 Python
Python上下文管理器用法及实例解析
Nov 11 Python
Python模块future用法原理详解
Jan 20 Python
Python中用xlwt制作表格实例讲解
Nov 05 Python
pandas map(),apply(),applymap()区别解析
Feb 24 Python
python设置 matplotlib 正确显示中文的四种方式
May 10 Python
Django xadmin开启搜索功能的实现
Nov 15 #Python
Django 实现外键去除自动添加的后缀‘_id’
Nov 15 #Python
django中media媒体路径设置的步骤
Nov 15 #Python
Python中BeautifuSoup库的用法使用详解
Nov 15 #Python
python 实现多线程下载视频的代码
Nov 15 #Python
python 实现多线程下载m3u8格式视频并使用fmmpeg合并
Nov 15 #Python
浅析python内置模块collections
Nov 15 #Python
You might like
php木马攻击防御之道
2008/03/24 PHP
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
php读取csv实现csv文件下载功能
2013/12/18 PHP
PHP 获取ip地址代码汇总
2015/07/05 PHP
PHP表单提交后引号前自动加反斜杠的原因及三种办法关闭php魔术引号
2015/09/30 PHP
thinkphp下MySQL数据库读写分离代码剖析
2017/04/18 PHP
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
2020/03/02 PHP
PHP 裁剪图片
2021/03/09 PHP
浏览器脚本兼容 文本框中,回车键触发事件的兼容
2010/06/21 Javascript
jQuery数组处理方法汇总
2011/06/20 Javascript
基于javascript 闭包基础分享
2013/07/10 Javascript
JS关闭窗口或JS关闭页面的几种代码分享
2013/10/25 Javascript
js控制input输入字符解析
2013/12/27 Javascript
jQuery调用ajax请求的常见方法汇总
2015/03/24 Javascript
jQuery实现选项联动轮播效果【附实例】
2016/04/19 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
JS实现点击表头表格自动排序(含数字、字符串、日期)
2017/01/22 Javascript
vue生成token保存在客户端localStorage中的方法
2017/10/25 Javascript
Node.js readline 逐行读取、写入文件内容的示例
2018/03/01 Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
2018/04/27 Javascript
[02:23]2014DOTA2国际邀请赛中国战队回顾
2014/08/01 DOTA
python中的sort方法使用详解
2014/07/25 Python
用Python展示动态规则法用以解决重叠子问题的示例
2015/04/02 Python
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
Python实现的排列组合计算操作示例
2017/10/13 Python
Django实现快速分页的方法实例
2017/10/22 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
2020/03/10 Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
2020/07/20 Python
用CSS3将你的设计带入下个高度
2009/08/08 HTML / CSS
HTML5 canvas实现雪花飘落特效
2016/03/08 HTML / CSS
英国在线购买马术服装:EQUUS
2019/07/12 全球购物
结婚喜宴家长答谢词
2014/01/15 职场文书
《愚公移山》教学反思
2014/02/20 职场文书
2015年清明节扫墓演讲稿
2015/03/18 职场文书
2015年社区民政工作总结
2015/04/21 职场文书
简单的辞职信模板
2015/05/12 职场文书