专栏首页python教程-猿说python5.python 字符串/列表/元组/字典之间的相互转换

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

一.字符串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)之间的相互转换

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 38.python print函数

    python中内置函数我们使用的最频繁的莫过于print函数,重helloword开始,我们就一直在接触print,虽然使用简单,不过你真的会玩print函数吗...

    猿说编程[Python和C]
  • 13.python 列表List

    列表是python开发过程中最常用的数据类型之一,列表俗称:list ,特点如下:

    猿说编程[Python和C]
  • 6.python变量

    何为python变量,即数据类型。python变量一共六种类型:整数/浮点数/字符串/BOOL/列表/元组/字典,今天先讲解前四种,后三种留到后面的文章在讲解。

    猿说编程[Python和C]
  • Python 自学二——类型

    ', '.join(['cats', 'rats', 'bats']) # 以 `, ` 分隔 'cats, rats, bats' s = 'cat ra...

    七适散人
  • Python3快速入门(三)——Pyth

    Python3 中有六种标准数据类型: A、Number(数字) B、String(字符串) C、List(列表) D、Tuple(元组) E、Set(集合) ...

    py3study
  • day03

        True,False   str:存储少量数据,进行操作     'fjdsal' ,'二哥','13243','fdshklj' ...

    py3study
  • 人人都懂得???

    只是我们没有把它抽象化而已), 其实就是相当于一个停车场, 那么这个停车场就是肯定有它的固定位置 (在计算机中,我们叫他为指针,指向哪里的意思), 停车场还有停...

    公众号---志学Python
  • python-基本运算符(解压缩-必考)

    py3study
  • Python中的字符串及用法

    字符串是 Python 中最常用的数据类型 1.#字符串的定义 a = 'westos' b = "what's" c = """ 用户管理管理系统 1.添加用...

    py3study
  • python

    列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

    Jinni

扫码关注云+社区

领取腾讯云代金券