zoukankan      html  css  js  c++  java
  • python基础数据类型一(元祖)

    一.元祖

    1.对于容器型数据类型list,无论谁都可以对其增删改查,那么有一些重要的数据放在list中是不安全的,所以需要一种容器类的数据类型存放重要的数据,创建之初只能查看而不能增删改,这种数据类型就是元祖。

    元祖:俗称不可变的列表,又被成为只读列表,元祖也是python的基本数据类型之一,

    用小括号括起来,里面可以放任何数据类型的数据,查询可以,循环也可以,切片也可以.但就是不能改.在python中关键字是tuple

    tu = ('我','怎么','这么','可爱')
    
    tu1 = tu[0]  # 记性下标
    print(tu1)
    
    for i in tu:
        print(i)  # 进行for循环
    
    tu2 = tu[0:3]
    print(tu2)  # 进行切片
    
    结果:
    Traceback (most recent call last):
      File "D:/python_object/path2/test.py", line 1286, in <module>
        tu[0] = '你'
    NameError: name 'tu' is not defined
    

    关于不可变, 注意: 这里元组的不可变的意思是子元素不可变. 而子元素内部的子元素是可以变, 这取决于子元素是否是可变对象.

    元组中如果只有一个元素. 一定要添加一个逗号, 否则就不是元组

    tu = ('meet')
    print(type(tu))  #type是查看数据类型
    
    结果:
    <class:str>
    
    tu = ('meet',)
    print(type(tu))  #type是查看数据类型
    
    结果:
    <class:tuple>
    

    这个知识点如何使用

    1.可遍历

    2.可切片

    3.有len,count,index方法

    元祖嵌套

    tu = ('今天姐姐不在家','姐夫和小姨子在客厅聊天',('姐夫问小姨子税后多少钱','小姨子低声说道说和姐夫还提钱'))
    tu1 = tu[0]
    tu2 = tu[1]
    tu3 = tu[2][0]
    tu4 = tu[2][1]
    
    print(tu1)
    print(tu2)
    print(tu3)
    print(tu4)
    结果:
    今天姐姐不在家
    姐夫和小姨子在客厅聊天
    姐夫问小姨子税后多少钱
    小姨子低声说道说和姐夫还提钱
    

    在哪里使用

    就是将一些非常重要的不可让人改动的数据放在元祖中,只供查看。后期你们写项目的时候会有配置文件,配置文件中的不想让人修改的单个变量使用常量,如果是多个不想让人修改的就是用元组来存储

    二.range

    翻译过来就是范围,那我们我来先看下.

    range(0,5,1)
    
    参数第一个是范围的起始位置
    参数第二个是范围的结束位置
    参数第三个是步长
    print(range(0,5))
    # 结果:
    range(0, 5)  #一个范围
    # 我们可以通过list方法来转换这个范围来查看一下
    l = list(range(0,5))
    print(l)
    
    # 结果:
    [0, 1, 2, 3, 4]
    l = list(range(0,5,2))
    print(l)
    # 结果:
    [0, 2, 4]   # 这个结果就会发现和我之前用步长获取的内容是相似的,是的他就是步长
    
    • range的特性是顾头不顾尾

    • python2和python3中的区别

      print(range(0,10))
      #python2中直接返回列表,xrange()和python3中的range相似
      #python3中作为迭代对象,怎么写就怎么打印,可以使用list()进行转换
      
    • range的语法

      range(0,10)#起始位置和终止位置,起始位置是0时可以默认不写
      range(10,1,-1)#也可以从大到小生成数据,
      range(1,100,2)#也可以用来生成奇数和偶数等
      
    • 常见的问题

      lst = []
      for i in lst:
          lst.append("meet")
          print(lst)  # 不会打印内容  因为lst是空的
      
      lst = [1,2]
      for i in lst:
          lst.append("meet")
          print(lst) # 循环打印lst中的内容 -- 此循环是死循环
      
      lst = [1,2]
      for i in lst:
          lst.append("meet")
      print(lst)  # 死循环 -- 不会打印内容
      
      lst = []
      for i in range(5):
          lst.append([])
      print(lst)  # [[],[],[],[],[]]
      
      lst = [1,2]
      lst[0] = lst
      print(lst)  # [[...],2]
      
  • 相关阅读:
    Spring基础知识
    Hibernate基础知识
    Struts2基础知识
    在eclipse里头用checkstyle检查项目出现 File contains tab characters (this is the first instance)原因
    java后台获取cookie里面值得方法
    ckplayer 中的style.swf 中的 style.xml 中的修改方法
    java hql case when 的用法
    Windows下Mongodb安装及配置
    Mongodb中经常出现的错误(汇总)child process failed, exited with error number
    Mac 安装mongodb
  • 原文地址:https://www.cnblogs.com/luckinlee/p/11619855.html
Copyright © 2011-2022 走看看