python字符串/列表/元组/字典之间的相互转换(5)

时间:2023-01-30 18:16:52

一.字符串str与列表list

1.字符串转列表

字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下:

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com @File:python_data.py
@Time:2019/9/20 20:45 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
""" str1 = "hello word 猿说python python教程"
print(str1) # 输出字符串
print(type(str1)) # 输出数据类型:
print(len(str1)) # 输出字符串长度 print("***"*20) # 小敲门:直接打印60个*
#根据空格切片
list1 = str1.split(" ") # 对字符串中的空格(' ')进行切片,返回值是一个列表list并赋值给list1
print(list1) # 输出列表数据
print(type(list1)) # 输出数据类型:类型
print(len(list1)) # 输出列表长度(列表的数据个数) print("***"*20) # 小敲门:直接打印60个*
#根据字符'p'切片
list1 = str1.split("p") # 对字符串中的'p'进行切片,返回值是一个列表list并赋值给list1
print(list1) # 输出列表数据
print(type(list1)) # 输出数据类型:类型
print(len(list1)) # 输出列表长度(列表的数据个数) print("***"*20) # 小敲门:直接打印60个*
#根据字符'o'切片
list1 = str1.split("o") # 对字符串中的'o'进行切片,返回值是一个列表list并赋值给list1
print(list1) # 输出列表数据
print(type(list1)) # 输出数据类型:类型
print(len(list1)) # 输出列表长度(列表的数据个数)

输出结果:

hello word 猿说python python教程
<class 'str'>
28
************************************************************
['hello', 'word', '猿说python', 'python教程']
<class 'list'>
4
************************************************************
['hello word 猿说', 'ython ', 'ython教程']
<class 'list'>
3
************************************************************
['hell', ' w', 'rd 猿说pyth', 'n pyth', 'n教程']
<class 'list'>
5

2.列表转字符串

列表转为字符串需要使用”.join()方法,join()方法可以直接将列表转为一个字符串,示例代码如下:

list1 = ["hello", "word", "猿说python", "python教程"]
print(list1) # 输出字符串
print(type(list1)) # 输出数据类型:
print(len(list1)) # 输出字符串长度 print("***"*20) # 小敲门:直接打印60个*
#根据空格切片
str1 = "".join(list1) # 对字符串中的空格(' ')进行切片,返回值是一个列表list并赋值给list1
print(str1) # 输出列表数据
print(type(str1)) # 输出数据类型:类型
print(len(str1)) # 输出列表长度(列表的数据个数)

输出结果:

['猿说python', 'word', 'python教程', 'hello']
<class 'list'>
4
************************************************************
猿说pythonwordpython教程hello
<class 'str'>
25

二.字符串str与字典dict

1.字符串转字典

将字符串转为字典可以通过内置函数eval()完成,对于内置函数eval()的使用,在后面的文章还会有详细讲解,今天先简单了解一下:

# 注意单引号和双引号的配合使用
str1 = '{"name":"zhangsan","age":18,"sing_dog":False }'
print(str1)
print(type(str1))
print(len(str1)) print("***"*20) # 小敲门:直接打印60个*
dict1 = eval(str1) # 强制将字符串str转为字典dict
print(dict1)
print(type(dict1))
print(len(dict1))

输出结果:

{"name":"zhangsan","age":18,"sing_dog":False }
<class 'str'>
46
************************************************************
{'name': 'zhangsan', 'age': 18, 'sing_dog': False}
<class 'dict'>
3

2.字典转字符串

将字典转为字符串可以直接通过str()类型强制转换即可,示例代码如下:

dict1 = {"name":"zhangsan","age":18,"sing_dog":False }
print(dict1)
print(type(dict1))
print(len(dict1)) print("***"*20) # 小敲门:直接打印60个*
str1 = str(dict1) # 强制将字典dict转为字符串str
print(str1)
print(type(str1))
print(len(str1))

输出结果:

{'name': 'zhangsan', 'age': 18, 'sing_dog': False}
<class 'dict'>
3
************************************************************
{'name': 'zhangsan', 'age': 18, 'sing_dog': False}
<class 'str'>
50

三.列表list与字典dict

1.列表转字典

列表转为字典不能通过dict()强制转换,但是可以通过内置函数zip()完成,具体代码如下:

list1 = ["hello", "word", "猿说python", "python教程"]
list2 = ["a","b","c","d","e","f","g"]
dict1 = dict(zip(list1,list2)) print(dict1)
print(type(dict1))
print(len(dict1))

输出结果:

{'hello': 'a', 'word': 'b', '猿说python': 'c', 'python教程': 'd'}
<class 'dict'>
4

注意:内置函数zip 是将两个列表的数据两两组合形成键值对,构成字典;如果两个列表的长度不一致时,多出的元素在另一个列表无匹配的元素时就不展示多出的元素。

2.字典转列表

可以通过list()方法强制将字典中的key 或者 value转为列表,示例代码如下:

dict1 = {"name":"zhangsan","age":18,"sing_dog":False }
# 强制将字典dict中的keys转为列表
list1= list(dict1.keys())
print(list1)
print(type(list1))
print(len(list1)) print("***"*20) # 小敲门:直接打印60个*
# 强制将字典dict中的values转为列表
list2 = list(dict1.values())
print(list2)
print(type(list2))
print(len(list2))

输出结果:

['name', 'age', 'sing_dog']
<class 'list'>
3
************************************************************
['zhangsan', 18, False]
<class 'list'>
3

猜你喜欢:

1.python  字符串

2.python 列表

3.python 元组

4.python 字典

转载请注明:猿说Python » python 字符串(str)/列表(list)/元组(tuple)/字典(dict)之间的相互转换

技术交流、商务合作请直接联系博主
扫码或搜索:猿说python
python字符串/列表/元组/字典之间的相互转换(5)
猿说python
微信公众号 扫一扫关注

python字符串/列表/元组/字典之间的相互转换(5)的更多相关文章

  1. python字符串 列表 元组 字典相关操作函数总结

    1.字符串操作函数 find 在字符串中查找子串,找到首次出现的位置,返回下标,找不到返回-1 rfind 从右边查找 join 连接字符串数组 replace 用指定内容替换指定内容,可以指定次数 ...

  2. python 字符串&comma;列表&comma;元组&comma;字典相互转换

    1.字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} 字典转为字符串,返回:<type 'str'> {'age': 7, 'n ...

  3. Python笔记【5】&lowbar;字符串&amp&semi;列表&amp&semi;元组&amp&semi;字典之间转换学习

    #!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...

  4. python&lowbar;字符串&amp&semi;列表&amp&semi;元组&amp&semi;字典之间转换学习

    #!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...

  5. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  6. Python第三天 序列 数据类型 数值 字符串 列表 元组 字典

    Python第三天 序列  数据类型  数值  字符串  列表  元组  字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...

  7. &ast;&ast;python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  8. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  9. Python学习-列表元组字典操作

    一.列表 列表是Python的基本数据类型之一,它是以 [] 括起来的,内部成员用逗号隔开.里面可以存放各种数据类型. # 例如: list2 = ['jason', 2, (1, 3), ['war ...

随机推荐

  1. With&lpar;ReadPast&rpar;就不会被阻塞吗?

    在生产环境中,会有很多使用ReadPast查询提示的场合,来避免正在被其它事务锁定的行对当前查询造成阻塞,而又不会获取到“脏数据”. 可是很多人都疑惑,为什么我使用了ReadPast仍然有时会被阻塞? ...

  2. VS 创建虚拟目录失败,映射到其他文件夹!

    今天,改一哥们项目!立马,问了一下原因.支支吾吾的气死LZ! 算了,就不信自己琢磨不出来!哼 找了半天,坑爹的是在Web.csproj文件中! 用txt打开,发现这个东东! <UseIIS&gt ...

  3. MyEclipse启动慢的办法

    禁用myeclipse updating indexes MyEclipse 总是不停的在 Update index,研究发现Update index...是Maven在下载更新,但很是影响myecl ...

  4. javascript 如何访问 action或者controller 传给 jsp 页面的值

    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...

  5. spark Basic code demo

    spark-shell --master=spark://namenode01:7077 --executor-memory 2g --driver-class-path /app/spark141/ ...

  6. 文件MD5校验

    1. 以前记得是在 msdn.itellyou.cn 上下载的 MD5 校验工具,应该是 IHasher,但是现在 msdn.itellyou.cn 上搜不到这个工具了... 2.

  7. Excel公式中双引号和单引号输入和显示以及函数的选择确认

    [Excel中显示双引号] 1.直接输入双引号“”或单引号“ 2.工式中显示双引号需输入“”“”“”(六个引号)或单引号需输入“”“”(四个引号) [Excel中快速确认已选择的函数] 1.用键盘的上 ...

  8. iOS中UIWebView使用JS交互 - 机智的新手

    iOS中偶尔也会用到webview来显示一些内容,比如新闻,或者一段介绍.但是用的不多,现在来教大家怎么使用js跟webview进行交互. 这里就拿点击图片获取图片路径为例: 1.测试页面html & ...

  9. casio计算器计算统计数据

    http://blog.csdn.net/pipisorry/article/details/50257319 使用casio计算器计算输入数据均值.标准差和相关系数的方法,lz使用casio fx8 ...

  10. React Native入门 认识Flexbox布局

    Flexbox布局是由W3C在09年提出的在Web端取代CSS盒子模型的一种布局方式. ReactNative实现了Flexbox布局的大部分功能. Flexbox布局所使用的属性,基本可以分为两大类 ...