Python自动化运维开发----基础(四)列表基础
admin
2023-07-14 16:04:39
0

1.列表的定义

列表是由中括号括起来的,每一个元素之间都是由逗号隔开

eg:定义一个列表

>>> a = [1, 2, 3, 4, 5, 6]
>>> a
[1, 2, 3, 4, 5, 6]
>>>

2.列表的特点

(1)有序

(2)编号

(3)遍历

(4)可追加、插入

(5)可删除、弹出

(6)可修改

(7)长度不定

 eg1: 访问列表中的元素

从左往右访问的话编号从0开始

>>> a[0]
1

从右往左访问的话编号从-1开始

>>> a[-1]
6

eg2: 修改列表的某一个元素的值

>>> a
[1, 2, 3, 4, 5, 6]
>>> a[1] = 1
>>> a
[1, 1, 3, 4, 5, 6]

eg3: 列表遍历用for

>>> for i in a:
...     print(i)
... 
1
1
3
4
5
6

eg4: 删除列表中的元素

>>> a
[1, 1, 3, 4, 5, 6]
>>> del a[1]
>>> a
[1, 3, 4, 5, 6]

eg5: 查看列表的长度

>>> len(a)
5

eg6: 查看索引元素是列表的的长度

>>> a.append([1,2])
>>> a
[1, 3, 4, 5, 6, [1, 2]]
>>> len(a[-1])
2

eg7: 查看值是否在列表中

>>> a
[1, 3, 4, 5, 6, [1, 2]]
>>> 1 in a    
True
>>> 1 not in a
False

3.列表转换

规则:

list ----> int       不能转换

list ----> float    不能转换

list ----> str        可以转换   转换后有 “”

list ----> bool     可以转换   空列表是 False   否则就是 True

4.小练习

eg1:  写一个等差数列 从1开始到 100 依次递增5

用while实现

#!/usr/bin/python
i = 1
while i <= 100:
    print(i)
    i += 5

用range函数实现

#!/usr/bin/python
for i in range(1,100,5):
    print(i)

eg2: 写一个数字列表 找出数字列表中的数字最大的数字

用while循环实现

#!/usr/bin/python
num_list = [5,6,10,4,1,36]
num_length = len(num_list)
j = 1
max = num_list[0]
while j < num_length:
    if max > num_list[j]:
        j +=1
    else:
        max = num_list[j]
        j +=1
print(max)

用for循环实现

#!/usr/bin/python
max1 = num_list[0]
for z in num_list:
    if z > max1:
        max1 = z;
print(max1)

用python自带函数找最大的值

>>> a
[1, 3, 4, 5, 6]
>>> max(a)
6

用python自带的函数找最小的值

>>> min(a)
1

eg3: Python中表示什么都没有用 None , 如下用None做比较

#!/usr/bin/python

num = [-1,-2,-3]

max = None

for i in num:
    if max is None:
        max = i
    elif i > max:
        max = i
print(max)

5.list的四则运算

list可以做的四则运算有加法和乘法(乘法必须是乘以整数)

list的加法

>>> a = [1, 2, 3]
>>> b = [4, 5, 6]
>>> a + b
[1, 2, 3, 4, 5, 6]

list的乘法

>>> a * 2
[1, 2, 3, 1, 2, 3]

6.list的切片(先找索引编号,再找索引编号对应的元素)

切片和range类似  range(start, end, step)

注:切片是根据前一个列表的索引编号组成一个新的list

从a列表中用切片截取一个新的分片

>>> a
[1, 2, 3]
>>> a[1:2]
[2]

切片的格式:  A[start, end, step]

规则:

step = 1   start = 0     end != len(list)    -----> list[:end]    start可以省略

step = 1   start = 0     end = len(list)     -----> list[start:]

start = 0   step != 1    end = len(list)     -----> list[::step]

start = 0   step = 1     end = len(list)     -----> list[:]


相关内容

热门资讯

特朗普:正致力于与伊朗达成协议... 特朗普在《纽约邮报》一档播客访谈节目中称,他正与伊朗磋商一项协议,伊朗已同意不再谋求拥有核武器。他表...
不接壤的日菲为何偷划海界? 日菲近日发表联合声明,宣称就“划定两国专属经济区和大陆架的海洋边界”启动正式谈判。两个隔海相望的国家...
凤凰晚报丨从钳工到老戏骨,魏宗... 今日人物【从钳工到老戏骨,魏宗万用一生诠释“戏比天大”】6月1日,表演艺术家魏宗万在上海逝世,享年8...
科威特称伊朗袭击致63人受伤 科威特卫生部门3日称,伊朗当天对科威特的袭击已造成63人受伤,相关部门已启动紧急应对预案,并在全国范...
日本标榜“和平国家”却行扩军备... 今年是东京审判开庭80周年,世界正回望历史、反思战争罪责、捍卫二战后来之不易的国际秩序之际,日本却迈...
浙江杨梅即将大规模上市,如何破... “我们现在的压力很大。”5月底,浙江余姚杨梅产区丈亭镇副镇长林宇站在一片杨梅林前对第一财经表示,当地...
致5死2伤!韩国就韩华航空航天... 【环球网报道 记者 姜蔼玲】据韩联社6月1日报道,针对位于韩国大田的韩华航空航天公司发生爆炸致7人伤...
黄河科技学院2026年招生简章 长按图片识别二维码或点击 “阅读原文” 查看电子招生简章。
医路起航,从“心” 开始!黄河... 6月1日上午,黄河科技学院附属医院2022级临床医学本科实习生入院岗前培训在大医讲堂顺利举办。院领导...
问题居然在实体卡槽上!美版iP... 6月2日消息,日前,又有博主提前把还没发布的iPhone 18 Pro电池参数给曝光了出来,根据爆料...