在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 list 合并连接字符串的方法
Mar 09 Python
Python多进程通信Queue、Pipe、Value、Array实例
Nov 21 Python
python简单判断序列是否为空的方法
Jun 30 Python
Python解析json文件相关知识学习
Mar 01 Python
Python彩色化Linux的命令行终端界面的代码实例分享
Jul 02 Python
python中异常报错处理方法汇总
Nov 20 Python
Python实现删除文件中含“指定内容”的行示例
Jun 09 Python
python密码错误三次锁定(实例讲解)
Nov 14 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
Nov 18 Python
Python 调用PIL库失败的解决方法
Jan 08 Python
python实现nao机器人手臂动作控制
Apr 29 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 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
对javascript和select部件的结合运用
2006/10/09 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
php获取从html表单传递数组的方法
2015/03/20 PHP
js 自定义的联动下拉框
2010/02/07 Javascript
收集的10个免费的jQuery相册
2011/02/26 Javascript
兼容IE和Firefox火狐的上下、左右循环无间断滚动JS代码
2013/04/19 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
Jquery easyui开启行编辑模式增删改操作
2016/01/14 Javascript
jQuery基于muipicker实现仿ios时间选择
2016/02/22 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
JS 实现导航菜单中的二级下拉菜单的几种方式
2016/10/31 Javascript
javascript学习之json入门
2016/12/22 Javascript
微信小程序 动态绑定数据及动态事件处理
2017/03/14 Javascript
SeaJS中use函数用法实例分析
2017/10/10 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
2018/08/08 Javascript
其实你可以少写点if else与switch(推荐)
2019/01/10 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
2019/02/13 Javascript
Vue+Element实现动态生成新表单并添加验证功能
2019/05/23 Javascript
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
小程序实现上下切换位置
2020/11/16 Javascript
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
利用Python如何生成hash值示例详解
2017/12/20 Python
python使用TensorFlow进行图像处理的方法
2018/02/28 Python
超实用的 30 段 Python 案例
2019/10/10 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
Python内置方法和属性应用:反射和单例(推荐)
2020/06/19 Python
html5使用canvas实现跟随光标跳动的火焰效果
2014/01/07 HTML / CSS
个人思想理论学习的自我鉴定
2013/11/30 职场文书
《爱如茉莉》教后反思
2014/04/12 职场文书
党的群众路线教育实践活动自我剖析材料
2014/10/08 职场文书
销售2014年度工作总结
2014/12/08 职场文书
小学生五一劳动节演讲稿
2015/03/18 职场文书
超市店长竞聘书
2015/09/15 职场文书
基于JavaScript实现省市联动效果
2021/06/22 Javascript
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle