一、  元组:tuple类型,元组一级元素 不能修改 不能增加 不能删除,是有序的。

        格式 :tu=(1,2,3,4,5,6)

1.类型转换:
  #字符串转换成元组
    b=“123”
    c=tuple(b) #转换类型
    print(c)----- ("1","2","3")   
    print(type(c))----<class 'tuple'> #tuple类型   
#列表转换成元组:
    b=[1,2,3,4]
    c=tuple(b) #转换类型
    print(c)----- (1, 2, 3, 4)
    print(type(c))-----<class 'tuple'> #tuple类型     
  #元组转换成列表
    tu=(1,2,3,4)
    c=list(tu) #转换类型
    print(c)-----([1,2,3,4])
    print(type(c))-----<class 'list'> #list类型
    #元组转换成字符串 
    s=""
    tu=(1,2,3,4)
    for i in tu: -----#遍历列表
      s=s+str(i) -----#将每个元素转换成str类型相加
    print(s)------1234
    print(type(s))----<class 'str'> #str类型
  
    注#数字不能转换成列表list,也不能转换成元组 反之也不能

  2.列表的取值、查询、长度、循环:

       tu=(1,2,3,4,5,6)

        #索引取值:
          v=tu[0] #获取tu元组中下表为0的元素
          print(v) -----1         #切片取值:
          v=li[0:3] #获取tu元组中下表0到3的元素 含头不含尾     
          print(v)----- (1,2,3) #切片元组返回值是元组
          print(tu[0:3:2])-----(1, 3) #从下标是0的元素开始取值 每俩个取一个 到下标是3的元素结束,取值不包含3
        #查询:
           a in li #在就返回True 不在就false
           not in #和 in 操作符相反
        #获取列表的长度
          v=len(tu)  #获取元组的长度
          print(v)----- 6         #循环语句:
          for item in tu #循环遍历
            print(item) ------1 2 3 4 5 6 在元组内是什么类型,循环出来之后还是什么类型
          while 条件:
             执行代码块

  3.元组的加与乘:

#程序程序:
    tua=(1,2,3)
    tub=(4,5,6)
   tu = tua +tub #元组与元组相加(就是俩个元组组合到一块)
   print(li)
#运行结果:(1, 2, 3, 4, 5, 6)
#程序程序:
   tua=(1,2,3)
   tu =tua*3 #元组可以与数字相乘(重复相应次数再组合)  
print(tu)
#运行结果:(1, 2, 3, 1, 2, 3, 1, 2, 3)

  4.元祖中的方法:

tu=[1,2,3,4,5,6]

   <1> tu.count(参数)   #获取参数在元组中出现的次数。  参数可以是变量,可以是任何数据类型   
  <2>  li.index(参数1,开始索引,结尾索引)  #获取指定值的索引位置。 在开始索引,结尾索引范围中间,寻找参数1的索引 不包含结尾索引(含头不含尾) 。 从左到右找到第一个就返回索引值。找不到就报错

    二、  字典:dict类型,字典 ,是无序的

        格式 :info={“key1”:“value1”,“key2”:“value2”,“key3”:“value3 ”}

           #value可以是任何数据类型,key不能是列表、字典(因为他们不能直接转成哈希值)

      1.列表的取值、查询、长度、循环:

       
        info={"name":"momo","age":18,"成绩":{"语文":80,"数学":85},"上课时间":["周一","周二","周三"]}

        #索引取值:           
            v=info[name]   #获取info字典中key为name的元素
            print(v) -----momo    
        #切片取值: 因为字典是无序的所以不能通过切片取值   
        #查询:
           键 in info #在就返回True 不在就false
           键 not in info #和 in 操作符相反
        #获取列表的长度
          v=len(info)  #获取字典的长度
          print(v)----- 4
        #修改:直接重新赋值         #删除元素:del info[key]
        
        #循环语句:
          

            for item in info:
                print(item)-----#默认只循环获取key
            for item in info.keys():
                print(item)----- #只循环获取key
            for item in info.values():
                print(item)----- #只循环获取值
            for k,v in info.items():
                print(item)----- #循环获取键值对

          while 条件:
             执行代码块

      2.字典中的方法:

            <1>.info.clear(): #清空列表
            <2>.info.copy(): #拷贝(浅拷贝)             @staticmethod()----- #静态方法 直接用dict.的方法
            <3>dict.fromkeys(参数1,参数2)#创建字典。参数1为key 必须为可迭代对象 参数2为统一的value值。返回值为字典             <4>dict.get(参数1,参数2) #参数1为键,当键不存在时也不会报错 参数2,当键不存在时会返回参数2 存在的话忽略参数2
            <5>dict.pop(key,参数2) #pop删除指定键值对,并获取对应的值,参数1必须为key,当参数1不存在时,就返回参数2,存在就忽略参数2             <6>dict.popitem() #无参数 随机删除一对键值对。并获取值,默认返回值类型为元组
         k,v=dict.popitem() #k接收 key v接收 value             <7>dict.setdefault(key,value) #设置值。如果已经存在,就不设置,只获取当前key对应的值,如果不存在,就设置,并获取当前设置的key对应的值             <8>dict.update(参数) #更新 参数可以是字典 参数还可以是(k1=123,k2=“lkd”)原字典存在的键值对进行覆盖,远字典不存在的进行添加
            <9>dict.values() #无参数。返回 dict_values(['value1', 'value2', 'value3'])
            <10>dict.keys() #无参数。返回 dict_keys(['key1', 'key2', 'key3'])
            <11>dict.items() #无参数。返回 dict_items([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')])

 

Python自学第二天学习之《元组与字典》的更多相关文章

  1. Python自学第二天学习之《列表》

    一.  列表:list类型,是有序的,可以被修改的. 格式 : li=["cd",1,"gfds",[1,2,3]] 1.类型转换: #字符串转换成列表 b=“ ...

  2. Python自学第二天学习之《字符串与数字》

    一.基本数据类型: 数字:int类型,不可变类型 格式 : a=10 1.其他类型转换成int型 : b=“123” c=int(b) #转换类型 print(c)----- 123 print(ty ...

  3. python学习Day6 元组、字典、集合set三类数据用法、深浅拷贝

    一.深浅拷贝 1.  值拷贝 ls1 = ls2  不开辟空间,指针跟着走.(直接将ls1中存放的地址拿过来,内存中不会开辟新的空间,所以你怎么变,我也跟着变.)(ls1内部的所有类型的值发生改变,l ...

  4. Python之列表、字符串、元组和字典的基本用法

    1 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单 ...

  5. Python笔记——基本数据结构:列表、元组及字典

    转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx Python基本数据结构:列表,元组及字典 一.列表 一组有序项 ...

  6. Python 自学基础(一)——元组 字典 文件操作

    格式化输出 name = input("请输入你的名字:") age = input("请输入你的年龄:") msg = ''' -------------in ...

  7. Python自学:第二章 Python之禅

    >>print import <Python之禅>,提姆·彼得斯著 美胜于丑. 显式优于隐式. 简单胜于复杂. 复杂总比复杂好. 平的比嵌套的好. 稀疏胜于稠密. 可读性计数. ...

  8. Python自学:第二章 注释

    #向大家问好 print("Hello Python People") 输出为 Hello Python People

  9. Python自学:第二章 删除空白

    lstrip:剔除开头空白 strip:剔除两段空白 rstrip:剔除末尾空白 favorite: 最喜欢的 >>>favorite_language = "Python ...

随机推荐

  1. MySQL集群安装与配置

    MySQL集群安装与配置   文章目录 [隐藏] 一.mysql集群安装 二.节点配置 三.首次启动节点 四.测试服务是否正常 五.安全关闭和重启 MySQL Cluster 是 MySQL 适合于分 ...

  2. proxy配置

    关于config.js里面proxy的配置:                  proxy: { '/api': { target: 'http://192.168.***.**:8500', cha ...

  3. SpringCloud学习系列-Eureka服务注册与发现(4)

    actuator与注册微服务信息完善 1.主机名称:服务名称修改 当前问题 含有主机名称 修改修改microservicecloud-provider-dept-8001 的yml文件 修改内容 eu ...

  4. 【转载】MIMO技术杂谈(一):鱼与熊掌能否兼得?--浅谈分集与复用的权衡

    原文链接(向作者致敬):http://www.txrjy.com/thread-667901-1-1.html   无线通信世界在过去的几十年中的发展简直是爆发式的,MIMO(多发多收)技术的出现更是 ...

  5. koa2的安装

    参考: https://www.jianshu.com/p/6b816c609669 1.1 安装koa-generator 在终端输入: $ npm install -g koa-generator ...

  6. HDU 6206 Apple ( 高精度 && 计算几何 && 三点构圆求圆心半径 )

    题意 : 给出四个点,问你第四个点是否在前三个点构成的圆内,若在圆外输出"Accepted",否则输出"Rejected",题目保证前三个点不在一条直线上. 分 ...

  7. 对拍程序 x

    一.介绍 在做题或者正式比赛过程中总会把水题做水做乱,但因为样例有坑所以直接过了样例,然后拿去评测结果发现全WA.那如何在这种情况下检查自己程序或算法的正确性呢?对拍是一个简便省事的方案. 所谓“对拍 ...

  8. 01 Netty是什么?

    01 Netty是什么? IO编程 我们简化下场景:客户端每隔两秒发送一个带有时间戳的 "hello world" 给服务端,服务端收到之后打印. 为了方便演示,下面例子中,服务端 ...

  9. 随机森林(Random Forest,简称RF)和Bagging算法

    随机森林(Random Forest,简称RF) 随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树,而它的本质属于机器学习的一大分支——集成学习(Ensemble Learn ...

  10. Redis 序列化方式StringRedisSerializer、FastJsonRedisSerializer和KryoRedisSerializer

    当我们的数据存储到Redis的时候,我们的键(key)和值(value)都是通过Spring提供的Serializer序列化到数据库的.RedisTemplate默认使用的是JdkSerializat ...