美文网首页
[Python]第1周day.5 序列:元组,列表嵌套

[Python]第1周day.5 序列:元组,列表嵌套

作者: 哈维Harvey | 来源:发表于2020-04-03 21:29 被阅读0次

个人主页:哈维数据
QQ:1876815991
邮箱:cnharvey@foxmail.com

一、元组

1.元组概述

元组是一个不可变的序列,它的操作方式基本上和列表是一致的。
所以在操作元组的时候,就把元组当成是一个不可变的列表即可。
一般,当我们希望数据不会改变的时候,就使用元组,其他时候都使用列表。

2.创建元组

使用小括号来创建元组
元组是不可变对象,所以我们没法对元组中的元素重新赋值。
当元组不是空元组的时候,括号可以省略。
如果元组不是空元组,那他里面至少要有一个逗号。
元组也可以使用下标索引元素,也可以截取。和列表是很相似的。
但是有一个最本质的区别,元组是不可变类型。我们不能增删改,只能查。
这就代表我们不能使用insert和append等。

a=(1,2,3)

3.元组的其他操作

可以同时将元组和变量同步赋值

my_tuple=10,20,30,40
a,b,c,d=my_tuple
print(a)
print(b)
print(c)
print(d)

这样的过程叫做元组的解包,这是很方便的一个用法,比如我们想要交换两个变量的值。
a=100 b=200
想要将两个变量进行交换,可以使用解包的特点。
a,b=b,a
这样两个变量的值就被交换了
当我们对一个元组进行解包时,如果变量数量和元组的中的元素数量必须一直。
如果我们在某个变量前面添加一个星号*,那么这个变量将会获取元组中所有剩余的元素。
这个被用于存储的变量将会以列表的形式存在。
如果说这个变量存在于中间,那么就会将除了前面的和后面的以外,中间的全部存储。
范例:

  • 用C来存储
    my_tuple=10,20,30,40,50,60,70
    a,b,*c=my_tuple
    print(a)
    print(b)
    print(c)
    #10
    #20
    #[30, 40, 50, 60, 70]
    
  • 用b来存储
    my_tuple=10,20,30,40,50,60,70
    a,*b,c=my_tuple
    print(a)
    print(b)
    print(c)
    #10
    #[20, 30, 40, 50, 60]
    #70
    
  • 用a来存储
    my_tuple=10,20,30,40,50,60,70
    *a,b,c=my_tuple
    print(a)
    print(b)
    print(c)
    #[10, 20, 30, 40, 50]
    #60
    #70
    

我们不能同时出现两个或两个以上的*变量,否则报错。
这种赋值方式,同样也适用于列表。

二、列表的嵌套

列表是可以嵌套使用的。列表中的元素也可以是列表类型。

变量=[[列表1],[列表2],[列表3],...,[列表N]]

列表在嵌套时,子列表会被认为是父列表的一个元素。
所以我们通过索引调用父列表的元素就可以获取到子列表。
或者可以使用跨层查找的方法

变量[父列表索引][子列表索引]
#这样获取到的是子列表的具体元素

三、列表练习

1.列表的基本操作

创建一个有10个元素的列表,值为[30,31,30,31,30,31,30,31,30,31]
(1)将索引为0的元素删除
(2)将索引为1的元素改为28
(3)在下标7的位置插入一个元素31
(4)在列表末尾添加两个元素:30,31

lists=[30,31,30,31,30,31,30,31,30,31]
lists.pop(0)
print(lists) #[31, 30, 31, 30, 31, 30, 31, 30, 31]
lists[1]=28
print(lists) #[31, 28, 31, 30, 31, 30, 31, 30, 31]
lists.insert(7,31)
print(lists) #[31, 28, 31, 30, 31, 30, 31, 31, 30, 31]
lists.extend([30,31])
print(lists) #[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

2.月份天数计算

提示用户输入一个月份,然后再控制台显示用户输入的月份有多少天。

mouth=int(input("请输入月份"))
day=[31,30,31,30,31,30,31,31,30,31,30,31]
print(day[mouth+1])

(这里智障了,第一题第二题实际上应该是连在一起的)

相关文章

  • [Python]第1周day.5 序列:元组,列表嵌套

    个人主页:哈维数据QQ:1876815991邮箱:cnharvey@foxmail.com 一、元组 1.元组概述...

  • python序列类型包括哪三种?

    python序列类型包括哪三种 python序列类型包括:列表、元组、字典 列表:有序可变序列 创建:userli...

  • 第3章:内建数据结构、函数及文件

    python的常用数据结构:元组、列表、字典和集合 元组(tuple):固定长度、不可变的python序列 列表:...

  • Python快速精通2 - 序列,字典代码部分

    Python3基础2:序列(列表,元组)与字典 (一)序列通用方法 序列封包 本质上: 变量 < - - 元组看下...

  • python语法笔记

    1、序列的方法 python中序列包含列表list、元组tuple、字符串str。 可以用于序列(表、元组、字...

  • Python3 第二章

    第二章 列表和元组 2.1 Python中最基本的数据结构为序列(Python)。 2.2 列表可修改,元组不可修...

  • 第二章:列表和元组

    python中最基本的数据结构为序列,序列又有字符串,列表和元组。其中列表是可以修改的,而元组是不可修改的。 列表...

  • markdown test

    一级标题 二级标题 三级标题 嵌套列表嵌套列表嵌套列表嵌套列表嵌套列表嵌套列表 无序列表 无序列表 有序列表1 有...

  • 2018-01-13 python学习第一天

    第二章 列表和元组 列表和元组区别:列表可以修改,二元组则不能 python的6种內建的序列: 列表和元组,字符串...

  • 序列

    序列表示索引为非负整数的有序对象集合,包括字符创、列表和元组。字符串是自负的序列,列表和元组则是任意python数...

网友评论

      本文标题:[Python]第1周day.5 序列:元组,列表嵌套

      本文链接:https://www.haomeiwen.com/subject/xmrlphtx.html