73. 以及python中列表(List)的定义,创建以及列表的特性

Lesson 73 python中列表(List)的定义及创建列表

1. python中列表的定义
列表是Python中最基本的数据结构
列表中的每个元素都分配一个位置,一个元素对应一个位置
第一个索引是0,第二个索引是1,依此类推
数组:存储同一种数据类型的集合 scores = [34,56,90,100..]
列表(打了激素的数组):可以存储任意数据类型
2. python中列表的创建

列表里:可以同时储存不同的数据类型

list = [1,1.2,True,'daisy']#创建列表list
print(list,type(list))#打印列表及其类型

在这里插入图片描述
可以看到, 列表可以存储整型, 浮点型, 布尔型和字符型等不同类型
在这里插入图片描述
将这个列表打印出来,并且查看其类型,可以看到,这个list列表的类型为list

3. python中列表的嵌套

列表中还可以嵌套列表,如下图所示,可以看到,list2列表中嵌套了list1
在这里插入图片描述
在这里插入图片描述
列表中嵌套了另一个列表,其类型依然为list

3. python中列表的特性
3.1 索引

service = [‘http’,‘ftp’,‘ssh’]

正向索引
print(service[0])   #获取列表中的第一个元素
反向索引
print(service[-1])   #获取列表中的最后一个元素

在这里插入图片描述

在这里插入图片描述

3.2 切片
print(service[::-1])  #将列表元素反转
print(service[1:])   #获取列表中的除了第一个元素以外的其他元素
print(service[:-1])   #获取列表中的除了最后一个元素以外的其他元素

在这里插入图片描述
在这里插入图片描述

3.3 重复
print(service * 3)   #将列表中的元素重复3

在这里插入图片描述

3.4 连接
service1 = ['mysql','firewalld']
print(service + service1)      #将service1列表连接到service之后

在这里插入图片描述
在这里插入图片描述

3.5 成员操作符
print('firewalld' in service)   #查看service列表中是否有firewalld元素
print('ftp' not in service1)     #查看service1列表中是否没有firewalld元素

在这里插入图片描述
可以看到, service元素中不存在firewalld元素
service1中不存在ftp元素
在这里插入图片描述

4. 列表小练习
假定有下面这样的列表:
    names = ['fentiao', 'fendai', 'fensi', 'apple']
    输出结果为:'I have fentiao, fendai, fensi and apple.'
names = ['fentiao', 'fendai', 'fensi', 'apple']
print('I have ' + ','.join(names[:-1]) + ' and ' + names[-1])

在这里插入图片描述
在这里插入图片描述

5. 列表综合练习
题目:输入某年某月某日(yyyy-MM-dd),
判断这一天是这一年的第几天?
cal = input('请输入日期 yyyy-MM-dd: ')
date = cal.split('-') #以-为分隔符拆分日期
# print(date)
year = int(date[0])
month = int(date[1])
day = int(date[2])
arr = [0,31,28,31,30,31,30,31,31,30,31,30,31]
num = 0
if ((year % 4 ==0) and (year % 100 !=0) or (year % 400 ==0)):
    arr[2] = 29
for i in range(1,len(arr)):
    if month > i:
        num += arr[i]
    else:
        num += day
        break
print('第几天:',num)

在这里插入图片描述
测试:以2019年-09-01为输入年月日,可以看到,2019-09-01是2019年的第244天
在这里插入图片描述
测试:以2018-12-25为输入年月日,可以看到,2018-12-25是2018年的第359天
在这里插入图片描述

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值