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

个人主页:哈维数据
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])

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、列表和元组 1.序列:是一种包含多项数据(元素)的数据结构,通过索引来访问序列中的每个元素。 1)常用的三种数...
    YH学编程阅读 445评论 0 0
  • 写在前面的话 代码中的# > 表示的是输出结果 输入 使用input()函数 用法 注意input函数输出的均是字...
    FlyingLittlePG阅读 2,937评论 0 8
  • Python 是一种相当高级的语言,通过 Python 解释器把符合语法的程序代码转换成 CPU 能够执行的机器码...
    Python程序媛阅读 1,951评论 0 3
  • (一) 教堂,第一次入耳已是孩提之时,每个礼拜天村里的大爷大妈会一起约好去县城,他们管这个叫做礼拜。 偶尔会听她们...
    赤道桑阅读 257评论 0 0
  • 很深沉的夜色里,泡了一杯咖啡,关掉了我世界里所有的声音,花了四个多时一口气地读完了《像我这样笨拙地生活》这...
    晖雪琳源阅读 477评论 3 1