zoukankan      html  css  js  c++  java
  • Python 字符串/列表/元组/字典之间的相互转换

    目录

    零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门

    一.字符串 str 与列表 list

    1.字符串转列表

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

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @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() 方法可以直接将列表转为一个字符串,示例代码如下:

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    
    """
    
    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() 的使用,在后面的文章还会有详细讲解,今天先简单了解一下:

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    
    """
    
    # 注意单引号和双引号的配合使用
    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()**类型强制转换即可,示例代码如下:

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    
    """
    
    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()**完成,具体代码如下:

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    
    """
    
    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 转为列表,示例代码如下:

    # !usr/bin/env python
    # !usr/bin/env python
    # -*- coding:utf-8 _*-
    """
    @Author:猿说编程
    @Blog(个人博客地址): www.codersrc.com
    @File:Python字符串/列表/元组/字典之间的相互转换.py
    @Time:2021/3/23 07:37
    @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
    
    """
    
    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 Pycharm Anacanda 区别
    3. Python2.x 和 Python3.x,如何选择?
    4. Python 配置环境
    5. Python Hello World 入门
    6. Python 代码注释
    7. Python 中文编码
    8. Anaconda 是什么?Anconda 下载安装教程
    9. Pycharm 提示:this license **** has been cancelled
    10. Pycharm 设置开发模板/字体大小/背景颜色
    11. Python 列表 list
    12. Python 元组 tuple
    13. Python 字典 dict

    未经允许不得转载:猿说编程 » Python 字符串/列表/元组/字典之间的相互转换

    本文由博客 - 猿说编程 猿说编程 发布!

  • 相关阅读:
    LeetCode Reverse Integer
    LeetCode 3Sum Closest
    LeetCode Remove Duplicates from Sorted Array
    解决git 远程删除分支之后,vscode本地分支列表没有更新问题
    reduce, filter, map, forEach 使用
    ehcarts tooltip 自定义展示. 展示小图例
    vscode插件,代码块,快捷键 入门
    DorisSQL与MySQL函数对照 差异篇
    Doris与mysql语法对照,差异篇
    功能测试报告模板
  • 原文地址:https://www.cnblogs.com/shuopython/p/14886456.html
Copyright © 2011-2022 走看看