###python中列表的知识###

1.列表的创建
#数组:存储同一种数据类型的集和 scores=[12,23,645]
#列表(打了激素的数组):可以存储任意数据类型

list = [1,1.2,True,‘hello’]
print(list,type(list))

#列表里面也是可以嵌套列表的
list2 = [1,2,3,[1,1.2,True,‘hello’]]
print(list2,type(list2))

2.列表的特性
service = [‘http’,‘ftp’,‘ssh’]

#索引
#正向索引
print(service[0])
#反向索引
print(service[-1])

#切片
print(service[::-1]) #列表的翻转
print(service[1:]) #除了第一个元素之后的其他元素
print(service[:-1]) #除了最后一个之前的其他元素
print(service[:5]) ##第5个元素包括第5个元素之前的元素

#重复
print(service * 3)

#连接
service1 =[‘mysql’,‘firewalld’]
print(service + service1)

#成员操作符
print(‘firewalld’ in service)
print(‘ftp’ in service)
print(‘mysql’ not in service)

#for 循环遍历
print(‘服务显示’.center(50,’*’))
for s in service:
# print不换行输出
print(s,end=’’)

3.列表元素的增加
service = [‘http’,‘ftp’,‘ssh’]

#append():追加 追加一个元素到列表中
service.append(‘firewalld’)
print(service)

#extend():拉神 追加多个元素到列表中
service.extend([‘myslq’,‘nfs’])
print(service)

#insert():在指定索引位置插入数据
service.insert(1,‘https’)
print(service)

4.列表元素的删除

>>> service = ['ftp','http','ftp','ssh']
>>> service.pop()								##删除最后一个元素
'ssh'
>>> service
['ftp', 'http', 'ftp']
>>> a = service.pop()							##删除的元素可以储存起来
>>> service
['ftp', 'http']
>>> a
'ftp'
>>> service.pop(0)
'ftp'
>>> service
['http']
>>> service.pop()
'http'
>>> service
[]
>>> service.pop()

#remove:删除列表元素
service = [‘ftp’,‘http’,‘ftp’,‘ssh’]
a = service.remove(‘ftp’)
print(service) ##删除的元素可以储存起来
print(a)

#从内存中删除一个数据
del service[1]
print(service)

5.列表元素的查看

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

#查看元素在列表中出现的次数
print(service.count(‘ftp’))

#查看指定元素的索引值(可以指点索引范围)
print(service.index(‘ssh’)) ##如果有多个相同的元素只显示最近的一个
print(service.index(‘ssh’,0,5))

6.字符串的排序
import random

service = [‘ftp’,‘http’,‘ftp’,‘ssh’]
#排序:按照Ascii码进行排序的
service.sort(reverse=True)
print(service)

#对字符串排序 不区分大小写

>>> phones = ['Tom','alice','bob','Borry']
>>> phones.sort()
>>> phones
['Borry', 'Tom', 'alice', 'bob']
>>> phones.sort(key=str.lower)
>>> phones
['alice', 'bob', 'Borry', 'Tom']
>>> phones.sort(key=str.upper)
>>> phones
['alice', 'bob', 'Borry', 'Tom']

li =list(range(10))
random.shuffle(li)
print(li)

7.列表中元素的修改
service = [‘ftp’,‘http’,‘ftp’,‘ssh’,‘ssh’,‘mysql’,‘ssh’]

#通过索引值,重新赋值
service[0] = ‘samba’
print(service)

#通过切片赋值
service[:2] = [‘mysql’,‘nginx’]
print(service)

8.小练习
先不要看答案,自己先思考
1。假定有下面这样的列表:
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])

2.题目:输入某年某月某日(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)

3.题目:输入三个整数x,y,z,请把这三个数由小到大输出

arr_str = input('请输入三个数字:\n')

arr = arr_str.split()

for i in range(len(arr)):
    arr[i] = int(arr[i])

arr.sort()
print('输入的结果是:\n' + str(arr))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值